| Requires any of the roles: | Agent, Administrator |
| POST,OPTIONS | /v1/Rfp/{RfpDocumentUID}/Refine |
|---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using CRM.AgencyPlatform.API.Internal;
namespace CRM.AgencyPlatform.API.Internal
{
public partial class CostRange
{
public virtual double Min { get; set; }
public virtual double Max { get; set; }
public virtual double Mid { get; set; }
}
public partial class CrewPlanLine
{
public virtual string PositionTag { get; set; }
public virtual int Needed { get; set; }
public virtual int NaiveTotal { get; set; }
public virtual int TaskAssignments { get; set; }
}
public partial class PricedEquipment
{
public virtual int EquipmentID { get; set; }
public virtual string EquipmentName { get; set; }
public virtual double Quantity { get; set; }
public virtual double? DurationDays { get; set; }
public virtual string RateType { get; set; }
public virtual double? BilledRate { get; set; }
public virtual double? CostRate { get; set; }
public virtual bool HasRate { get; set; }
public virtual bool IsInCatalog { get; set; }
public virtual double Cost { get; set; }
public virtual double CompanyCost { get; set; }
public virtual double Margin { get; set; }
}
public partial class PricedMaterial
{
public virtual int MaterialID { get; set; }
public virtual string MaterialName { get; set; }
public virtual double Quantity { get; set; }
public virtual double? UnitCost { get; set; }
public virtual bool HasRate { get; set; }
public virtual bool IsInCatalog { get; set; }
public virtual double Cost { get; set; }
}
public partial class PricedPosition
{
public virtual string PositionTag { get; set; }
public virtual double Hours { get; set; }
public virtual bool HasInternalRate { get; set; }
public virtual double? RateMin { get; set; }
public virtual double? RateMax { get; set; }
public virtual double? RateAvg { get; set; }
public virtual int ContactCount { get; set; }
public virtual CostRange Cost { get; set; }
public virtual double? MarketRateReference { get; set; }
}
public partial class PricedProposal
{
public virtual int RfpDocumentID { get; set; }
public virtual string ProjectName { get; set; }
public virtual string Currency { get; set; }
public virtual List<PricedTask> Tasks { get; set; } = [];
public virtual CostRange Total { get; set; }
public virtual int PositionsNeedingRate { get; set; }
public virtual int EquipmentNotInCatalog { get; set; }
public virtual int MaterialsNotInCatalog { get; set; }
public virtual int PositionsNotInCatalog { get; set; }
public virtual double EquipmentMargin { get; set; }
}
public partial class PricedTask
{
public virtual string Name { get; set; }
public virtual string Category { get; set; }
public virtual List<PricedPosition> Positions { get; set; } = [];
public virtual List<PricedEquipment> Equipment { get; set; } = [];
public virtual List<PricedMaterial> Materials { get; set; } = [];
public virtual CostRange Subtotal { get; set; }
}
public partial class ProjectProposal
{
public virtual int RfpDocumentID { get; set; }
public virtual string Mode { get; set; }
public virtual int? ProjectID { get; set; }
public virtual int? ChangeOrderID { get; set; }
public virtual string ProjectName { get; set; }
public virtual string ClientName { get; set; }
public virtual string ProjectType { get; set; }
public virtual string ProjectLocation { get; set; }
public virtual string Scope { get; set; }
public virtual string ProjectDescription { get; set; }
public virtual int? ContractDurationDays { get; set; }
public virtual string BidDueDate { get; set; }
public virtual DateTime? EstimatedStartDate { get; set; }
public virtual DateTime? EstimatedEndDate { get; set; }
public virtual List<ProposedTask> Tasks { get; set; } = [];
}
public partial class ProposedTask
{
public virtual int Seq { get; set; }
public virtual string Name { get; set; }
public virtual string Category { get; set; }
public virtual double? Quantity { get; set; }
public virtual string Unit { get; set; }
public virtual string SourceItemNumber { get; set; }
public virtual string SourceReference { get; set; }
public virtual string Notes { get; set; }
public virtual TaskResourcing Resourcing { get; set; }
public virtual double? DurationDays { get; set; }
public virtual List<int> DependsOn { get; set; } = [];
public virtual DateTime? EstimatedStartDate { get; set; }
public virtual DateTime? EstimatedEndDate { get; set; }
}
public partial class ResourcedEquipment
{
public virtual int EquipmentID { get; set; }
public virtual string EquipmentName { get; set; }
public virtual string MakeModel { get; set; }
public virtual double? Quantity { get; set; }
public virtual double? DurationDays { get; set; }
public virtual string SourceReference { get; set; }
public virtual string Notes { get; set; }
public virtual bool IsInCatalog { get; set; }
public virtual int SuggestedEquipmentID { get; set; }
public virtual string SuggestedEquipmentName { get; set; }
}
public partial class ResourcedMaterial
{
public virtual int MaterialID { get; set; }
public virtual string MaterialName { get; set; }
public virtual string MakeModel { get; set; }
public virtual double? Quantity { get; set; }
public virtual string Unit { get; set; }
public virtual string SourceReference { get; set; }
public virtual string Notes { get; set; }
public virtual bool IsInCatalog { get; set; }
public virtual int SuggestedMaterialID { get; set; }
public virtual string SuggestedMaterialName { get; set; }
}
public partial class ResourcedPosition
{
public virtual string PositionTag { get; set; }
public virtual double? Hours { get; set; }
public virtual int? Headcount { get; set; }
public virtual string SourceReference { get; set; }
public virtual string Notes { get; set; }
public virtual bool IsInCatalog { get; set; }
public virtual int? ContactID { get; set; }
}
public partial class RfpBidConstraint
{
public virtual string Constraint { get; set; }
public virtual string Detail { get; set; }
}
public partial class RfpBrief
{
public virtual string ProjectTitle { get; set; }
public virtual string SolicitationNumber { get; set; }
public virtual string IssuingOrganization { get; set; }
public virtual string ProjectType { get; set; }
public virtual string Summary { get; set; }
public virtual List<RfpLocation> Locations { get; set; } = [];
public virtual RfpSchedule Schedule { get; set; }
public virtual List<RfpLineItem> LineItems { get; set; } = [];
public virtual List<RfpBidConstraint> BidConstraints { get; set; } = [];
public virtual List<string> SpecialRequirements { get; set; } = [];
}
public partial class RfpLineItem
{
public virtual string ItemNumber { get; set; }
public virtual string Description { get; set; }
public virtual double? Quantity { get; set; }
public virtual string Unit { get; set; }
public virtual string Category { get; set; }
public virtual string SourceReference { get; set; }
}
public partial class RfpLocation
{
public virtual string Description { get; set; }
public virtual string City { get; set; }
public virtual string State { get; set; }
public virtual string Identifier { get; set; }
}
public partial class RfpRefineRequest
{
public virtual string RfpDocumentUID { get; set; }
public virtual string Layer { get; set; }
public virtual string Mode { get; set; }
public virtual string Instruction { get; set; }
}
public partial class RfpRefineResponse
{
public virtual ResponseStatus ResponseStatus { get; set; }
public virtual int RfpDocumentID { get; set; }
public virtual string Layer { get; set; }
public virtual string Mode { get; set; }
public virtual int TurnCount { get; set; }
public virtual RfpBrief Brief { get; set; }
public virtual ProjectProposal Proposal { get; set; }
public virtual PricedProposal Pricing { get; set; }
public virtual List<CrewPlanLine> CrewPlan { get; set; } = [];
public virtual long CacheReadTokens { get; set; }
public virtual long CacheCreationTokens { get; set; }
public virtual long InputTokens { get; set; }
}
public partial class RfpSchedule
{
public virtual string BidDueDate { get; set; }
public virtual string EstimatedStartDate { get; set; }
public virtual string QuestionsDueDate { get; set; }
public virtual int? ContractDurationDays { get; set; }
public virtual string Notes { get; set; }
}
public partial class TaskResourcing
{
public virtual List<ResourcedPosition> Positions { get; set; } = [];
public virtual List<ResourcedEquipment> Equipment { get; set; } = [];
public virtual List<ResourcedMaterial> Materials { get; set; } = [];
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/Rfp/{RfpDocumentUID}/Refine HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"RfpDocumentUID":"String","Layer":"String","Mode":"String","Instruction":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
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,"Layer":"String","Mode":"String","TurnCount":0,"Brief":{"ProjectTitle":"String","SolicitationNumber":"String","IssuingOrganization":"String","ProjectType":"String","Summary":"String","Locations":[{"Description":"String","City":"String","State":"String","Identifier":"String"}],"Schedule":{"BidDueDate":"String","EstimatedStartDate":"String","QuestionsDueDate":"String","ContractDurationDays":0,"Notes":"String"},"LineItems":[{"ItemNumber":"String","Description":"String","Quantity":0,"Unit":"String","Category":"String","SourceReference":"String"}],"BidConstraints":[{"Constraint":"String","Detail":"String"}],"SpecialRequirements":["String"]},"Proposal":{"RfpDocumentID":0,"Mode":"String","ProjectID":0,"ChangeOrderID":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"}]},"Pricing":{"RfpDocumentID":0,"ProjectName":"String","Currency":"String","Tasks":[{"Name":"String","Category":"String","Positions":[{"PositionTag":"String","Hours":0,"HasInternalRate":false,"RateMin":0,"RateMax":0,"RateAvg":0,"ContactCount":0,"Cost":{"Min":0,"Max":0,"Mid":0},"MarketRateReference":0}],"Equipment":[{"EquipmentID":0,"EquipmentName":"String","Quantity":0,"DurationDays":0,"RateType":"String","BilledRate":0,"CostRate":0,"HasRate":false,"IsInCatalog":false,"Cost":0,"CompanyCost":0,"Margin":0}],"Materials":[{"MaterialID":0,"MaterialName":"String","Quantity":0,"UnitCost":0,"HasRate":false,"IsInCatalog":false,"Cost":0}],"Subtotal":{"Min":0,"Max":0,"Mid":0}}],"Total":{"Min":0,"Max":0,"Mid":0},"PositionsNeedingRate":0,"EquipmentNotInCatalog":0,"MaterialsNotInCatalog":0,"PositionsNotInCatalog":0,"EquipmentMargin":0},"CrewPlan":[{"PositionTag":"String","Needed":0,"NaiveTotal":0,"TaskAssignments":0}],"CacheReadTokens":0,"CacheCreationTokens":0,"InputTokens":0}