{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID for the authenticated connection"
},
"accountManagerId": {
"type": "string",
"description": "Account Manager ID (Employee)"
},
"billingCustomerId": {
"type": "string",
"description": "Customer ID. If not provided, the billing customer from property will be used."
},
"blanketPOId": {
"type": "string",
"description": "Blanket PO ID"
},
"customerPoNumber": {
"type": "string",
"description": "Customer PO Number"
},
"departmentId": {
"type": "string",
"description": "Department ID"
},
"description": {
"type": "string",
"description": "Internal Notes field"
},
"discounts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"format": "uuid",
"description": "Product ID"
},
"description": {
"type": "string",
"description": "The description value"
},
"quantity": {
"type": "number",
"description": "The quantity value"
},
"unitCost": {
"type": "number",
"description": "Unit Cost"
},
"unitPrice": {
"type": "number",
"description": "Unit Price"
},
"taxable": {
"type": "boolean",
"description": "Is this item taxable?. If not provided, the product taxable will be used."
},
"costCodeId": {
"type": "string",
"format": "uuid",
"description": "Cost Code ID. If not provided, the product cost code will be used."
},
"jobCostTypeId": {
"type": "string",
"format": "uuid",
"description": "Job Cost Type ID. If not provided, the product job cost type will be used"
},
"revenueTypeId": {
"type": "string",
"format": "uuid",
"description": "Job Cost ID used for Revenue. If not provided, the product revenue type will be used."
},
"taxCodeId": {
"type": "string",
"format": "uuid",
"description": "Tax Code ID. Available only when line level tax feature is enabled."
},
"departmentId": {
"type": "string",
"format": "uuid",
"description": "Department ID. If not provided, the quote department will be used."
}
},
"required": [
"productId",
"quantity",
"unitCost",
"unitPrice"
]
},
"description": "The discounts value"
},
"dueDate": {
"type": "string",
"description": "Due Date"
},
"expirationDate": {
"type": "string",
"description": "Expiration Date"
},
"expirationLength": {
"type": "integer",
"description": "Expiration (days)"
},
"issueDescription": {
"type": "string",
"description": "Issue Description"
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"format": "uuid",
"description": "Product ID"
},
"description": {
"type": "string",
"description": "The description value"
},
"quantity": {
"type": "number",
"description": "The quantity value"
},
"unitCost": {
"type": "number",
"description": "Unit Cost"
},
"unitPrice": {
"type": "number",
"description": "Unit Price"
},
"taxable": {
"type": "boolean",
"description": "Is this item taxable?. If not provided, the product taxable will be used."
},
"costCodeId": {
"type": "string",
"format": "uuid",
"description": "Cost Code ID. If not provided, the product cost code will be used."
},
"jobCostTypeId": {
"type": "string",
"format": "uuid",
"description": "Job Cost Type ID. If not provided, the product job cost type will be used"
},
"revenueTypeId": {
"type": "string",
"format": "uuid",
"description": "Job Cost ID used for Revenue. If not provided, the product revenue type will be used."
},
"taxCodeId": {
"type": "string",
"format": "uuid",
"description": "Tax Code ID. Available only when line level tax feature is enabled."
},
"departmentId": {
"type": "string",
"format": "uuid",
"description": "Department ID. If not provided, the quote department will be used."
}
},
"required": [
"productId",
"quantity",
"unitCost",
"unitPrice"
]
},
"description": "The items value"
},
"jobTypeId": {
"type": "string",
"description": "Job Type ID"
},
"name": {
"type": "string",
"description": "Title"
},
"orderedById": {
"type": "string",
"description": "Company Representative / Ordered By ID"
},
"ownerId": {
"type": "string",
"description": "Project Manager ID (Employee)"
},
"priceBookId": {
"type": "string",
"description": "Pricebook ID. If not provided, the pricebook from property, customer or default pricebook will be used."
},
"propertyId": {
"type": "string",
"description": "Property ID"
},
"propertyRepId": {
"type": "string",
"description": "Property Representative"
},
"salesById": {
"type": "string",
"description": "Sold By ID (Employee)"
},
"scopeOfWork": {
"type": "string",
"description": "Scope of Work"
},
"sections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Section name"
},
"description": {
"type": "string",
"description": "Section Description"
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "Product ID"
},
"description": {
"type": "string"
},
"quantity": {
"type": "number"
},
"unitCost": {
"type": "number"
},
"unitPrice": {
"type": "number"
},
"taxable": {
"type": "boolean",
"description": "Is this item taxable?. If not provided, the product taxable will be used."
},
"costCodeId": {
"type": "string",
"description": "Cost Code ID. If not provided, the product cost code will be used."
},
"jobCostTypeId": {
"type": "string",
"description": "Job Cost Type ID. If not provided, the product job cost type will be used"
},
"revenueTypeId": {
"type": "string",
"description": "Job Cost ID used for Revenue. If not provided, the product revenue type will be used."
},
"taxCodeId": {
"type": "string",
"description": "Tax Code ID. Available only when line level tax feature is enabled."
},
"departmentId": {
"type": "string",
"description": "Department ID. If not provided, the quote department will be used."
}
}
},
"description": "The items value"
},
"laborItems": {
"type": "array",
"items": {
"type": "object",
"properties": {
"billingHours": {
"type": "number",
"description": "Billing Hours"
},
"payrollHours": {
"type": "number",
"description": "payroll hours"
},
"description": {
"type": "string"
},
"labourRateGroupId": {
"type": "string",
"description": "Labor Rate Group ID"
},
"labourTypeId": {
"type": "string",
"description": "Labor Type ID "
},
"jobCostTypeId": {
"type": "string",
"description": "Job Cost Type ID"
},
"payrollHourTypeId": {
"type": "string",
"description": "Payroll Hour Type ID"
},
"billingHourTypeId": {
"type": "string",
"description": "Billing Hour Type id. If not provided, the payroll to billing hour type mapping will be used"
},
"unitCost": {
"type": "number",
"description": "Unit Cost"
},
"unitPrice": {
"type": "number",
"description": "Unit Price"
},
"isTaxable": {
"type": "boolean"
},
"taxCodeId": {
"type": "string",
"description": "Tax Rate ID. Only available for tenants with multiple taxes enabled"
}
}
},
"description": "Labor Items"
}
}
},
"description": "The sections value"
},
"serviceAgreementId": {
"type": "string",
"description": "Service Agreement ID"
},
"serviceZoneIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"description": "Service Zone IDs. Required when Zone Management feature is enabled"
},
"taxRateId": {
"type": "string",
"description": "Tax Rate ID. If not provided, the property's"
},
"versionLabel": {
"type": "string",
"description": "Version title field"
}
},
"required": [
"PCID",
"departmentId",
"propertyId"
]
}