| GET,OPTIONS | /v1/projects/{ProjectID}/pay-apps |
|---|
import Foundation
import ServiceStack
public class PayApplicationListRequest : Codable
{
public var projectID:Int
required public init(){}
}
public class PayApplicationListResponse : Codable
{
public var responseStatus:ResponseStatus
public var projectID:Int
public var applications:[PayApplication] = []
required public init(){}
}
public class PayApplication : Codable
{
public var payApplicationID:Int
public var payApplicationUID:String
public var projectID:Int
public var periodNumber:Int
public var periodStart:Date?
public var periodEnd:Date?
public var status:String
public var billingTemplate:String
public var retainagePct:Double
public var originalContractSum:Double
public var netChangeByCO:Double
public var contractSumToDate:Double
public var completedStoredToDate:Double
public var retainageAmount:Double
public var earnedLessRetainage:Double
public var lessPreviousCertificates:Double
public var currentPaymentDue:Double
public var balanceToFinish:Double
public var invoiceID:Int?
public var certifiedAt:Date?
public var certifiedBy:String
public var createdBy:String
public var createdAt:Date?
public var updatedAt:Date?
public var lines:[PayApplicationLine] = []
required public init(){}
}
public class PayApplicationLine : Codable
{
public var payApplicationLineID:Int
public var payApplicationID:Int
public var costCode:String
public var Description:String
public var scheduledValue:Double
public var fromPreviousPct:Double
public var thisPeriodPct:Double
public var storedMaterials:Double
public var isChangeOrder:Bool
public var changeOrderID:Int?
public var sortOrder:Int
required public init(){}
}
Swift PayApplicationListRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/projects/{ProjectID}/pay-apps 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
}
},
ProjectID: 0,
Applications:
[
{
PayApplicationID: 0,
PayApplicationUID: 00000000000000000000000000000000,
ProjectID: 0,
PeriodNumber: 0,
PeriodStart: 0001-01-01,
PeriodEnd: 0001-01-01,
Status: String,
BillingTemplate: String,
RetainagePct: 0,
OriginalContractSum: 0,
NetChangeByCO: 0,
ContractSumToDate: 0,
CompletedStoredToDate: 0,
RetainageAmount: 0,
EarnedLessRetainage: 0,
LessPreviousCertificates: 0,
CurrentPaymentDue: 0,
BalanceToFinish: 0,
InvoiceID: 0,
CertifiedAt: 0001-01-01,
CertifiedBy: String,
CreatedBy: String,
CreatedAt: 0001-01-01,
UpdatedAt: 0001-01-01,
Lines:
[
{
PayApplicationLineID: 0,
PayApplicationID: 0,
CostCode: String,
Description: String,
ScheduledValue: 0,
FromPreviousPct: 0,
ThisPeriodPct: 0,
StoredMaterials: 0,
IsChangeOrder: False,
ChangeOrderID: 0,
SortOrder: 0
}
]
}
]
}