Trendsic Platform Service

<back to all web services

RfpApproveRequest

Requires Authentication
Requires any of the roles:Agent, Administrator
The following routes are available for this service:
POST,OPTIONS/v1/Rfp/{RfpDocumentUID}/Approve
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 ProjectProposal
            Public Overridable Property RfpDocumentID As Integer
            Public Overridable Property ProjectName As String
            Public Overridable Property ClientName As String
            Public Overridable Property ProjectType As String
            Public Overridable Property ProjectLocation As String
            Public Overridable Property Scope As String
            Public Overridable Property ProjectDescription As String
            Public Overridable Property ContractDurationDays As Integer?
            Public Overridable Property BidDueDate As String
            Public Overridable Property EstimatedStartDate As Date?
            Public Overridable Property EstimatedEndDate As Date?
            Public Overridable Property Tasks As List(Of ProposedTask) = New List(Of ProposedTask)
        End Class

        Public Partial Class ProposalDiff
            Public Overridable Property TasksAdded As List(Of String) = New List(Of String)
            Public Overridable Property TasksRemoved As List(Of String) = New List(Of String)
            Public Overridable Property Tasks As List(Of TaskDiff) = New List(Of TaskDiff)
            Public Overridable Property HasChanges As Boolean
        End Class

        Public Partial Class ProposedTask
            Public Overridable Property Seq As Integer
            Public Overridable Property Name As String
            Public Overridable Property Category As String
            Public Overridable Property Quantity As Double?
            Public Overridable Property Unit As String
            Public Overridable Property SourceItemNumber As String
            Public Overridable Property SourceReference As String
            Public Overridable Property Notes As String
            Public Overridable Property Resourcing As TaskResourcing
            Public Overridable Property DurationDays As Double?
            Public Overridable Property DependsOn As List(Of Integer) = New List(Of Integer)
            Public Overridable Property EstimatedStartDate As Date?
            Public Overridable Property EstimatedEndDate As Date?
        End Class

        Public Partial Class ResourcedEquipment
            Public Overridable Property EquipmentID As Integer
            Public Overridable Property EquipmentName As String
            Public Overridable Property MakeModel As String
            Public Overridable Property Quantity As Double?
            Public Overridable Property DurationDays As Double?
            Public Overridable Property SourceReference As String
            Public Overridable Property Notes As String
            Public Overridable Property IsInCatalog As Boolean
            Public Overridable Property SuggestedEquipmentID As Integer
            Public Overridable Property SuggestedEquipmentName As String
        End Class

        Public Partial Class ResourcedMaterial
            Public Overridable Property MaterialID As Integer
            Public Overridable Property MaterialName As String
            Public Overridable Property MakeModel As String
            Public Overridable Property Quantity As Double?
            Public Overridable Property Unit As String
            Public Overridable Property SourceReference As String
            Public Overridable Property Notes As String
            Public Overridable Property IsInCatalog As Boolean
            Public Overridable Property SuggestedMaterialID As Integer
            Public Overridable Property SuggestedMaterialName As String
        End Class

        Public Partial Class ResourcedPosition
            Public Overridable Property PositionTag As String
            Public Overridable Property Hours As Double?
            Public Overridable Property Headcount As Integer?
            Public Overridable Property SourceReference As String
            Public Overridable Property Notes As String
            Public Overridable Property IsInCatalog As Boolean
            Public Overridable Property ContactID As Integer?
        End Class

        Public Partial Class RfpApproveRequest
            Public Overridable Property RfpDocumentUID As Guid
            Public Overridable Property Proposal As ProjectProposal
        End Class

        Public Partial Class RfpApproveResponse
            Public Overridable Property ResponseStatus As ResponseStatus
            Public Overridable Property RfpDocumentID As Integer
            Public Overridable Property ProjectID As Integer
            Public Overridable Property ProjectUID As Guid
            Public Overridable Property RfpApprovalID As Integer
            Public Overridable Property JobIDs As List(Of Integer) = New List(Of Integer)
            Public Overridable Property OpenPositionCount As Integer
            Public Overridable Property Diff As ProposalDiff
        End Class

        Public Partial Class TaskDiff
            Public Overridable Property TaskName As String
            Public Overridable Property PositionsAdded As List(Of String) = New List(Of String)
            Public Overridable Property PositionsRemoved As List(Of String) = New List(Of String)
            Public Overridable Property PositionsStaffed As List(Of String) = New List(Of String)
            Public Overridable Property EquipmentAdded As List(Of Integer) = New List(Of Integer)
            Public Overridable Property EquipmentRemoved As List(Of Integer) = New List(Of Integer)
            Public Overridable Property MaterialsAdded As List(Of Integer) = New List(Of Integer)
            Public Overridable Property MaterialsRemoved As List(Of Integer) = New List(Of Integer)
            Public Overridable Property HasChanges As Boolean
        End Class

        Public Partial Class TaskResourcing
            Public Overridable Property Positions As List(Of ResourcedPosition) = New List(Of ResourcedPosition)
            Public Overridable Property Equipment As List(Of ResourcedEquipment) = New List(Of ResourcedEquipment)
            Public Overridable Property Materials As List(Of ResourcedMaterial) = New List(Of ResourcedMaterial)
        End Class
    End Namespace
End Namespace

VB.NET RfpApproveRequest DTOs

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

HTTP + CSV

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

POST /v1/Rfp/{RfpDocumentUID}/Approve HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"RfpDocumentUID":"00000000000000000000000000000000","Proposal":{"RfpDocumentID":0,"ProjectName":"String","ClientName":"String","ProjectType":"String","ProjectLocation":"String","Scope":"String","ProjectDescription":"String","ContractDurationDays":0,"BidDueDate":"String","EstimatedStartDate":"0001-01-01T00:00:00.0000000","EstimatedEndDate":"0001-01-01T00:00:00.0000000","Tasks":[{"Seq":0,"Name":"String","Category":"String","Quantity":0,"Unit":"String","SourceItemNumber":"String","SourceReference":"String","Notes":"String","Resourcing":{"Positions":[{"PositionTag":"String","Hours":0,"Headcount":0,"SourceReference":"String","Notes":"String","IsInCatalog":false,"ContactID":0}],"Equipment":[{"EquipmentID":0,"EquipmentName":"String","MakeModel":"String","Quantity":0,"DurationDays":0,"SourceReference":"String","Notes":"String","IsInCatalog":false,"SuggestedEquipmentID":0,"SuggestedEquipmentName":"String"}],"Materials":[{"MaterialID":0,"MaterialName":"String","MakeModel":"String","Quantity":0,"Unit":"String","SourceReference":"String","Notes":"String","IsInCatalog":false,"SuggestedMaterialID":0,"SuggestedMaterialName":"String"}]},"DurationDays":0,"DependsOn":[0],"EstimatedStartDate":"0001-01-01T00:00:00.0000000","EstimatedEndDate":"0001-01-01T00:00:00.0000000"}]}}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"RfpDocumentID":0,"ProjectID":0,"ProjectUID":"00000000000000000000000000000000","RfpApprovalID":0,"JobIDs":[0],"OpenPositionCount":0,"Diff":{"TasksAdded":["String"],"TasksRemoved":["String"],"Tasks":[{"TaskName":"String","PositionsAdded":["String"],"PositionsRemoved":["String"],"PositionsStaffed":["String"],"EquipmentAdded":[0],"EquipmentRemoved":[0],"MaterialsAdded":[0],"MaterialsRemoved":[0],"HasChanges":true}],"HasChanges":true}}