{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/Project",
"title": "Project",
"externalDocs": {
"url": "https://developer.xero.com/documentation/projects/projects"
},
"type": "object",
"properties": {
"projectId": {
"type": "string",
"format": "uuid",
"example": "254553fa-2be8-4991-bd5e-70a97ea12ef8",
"description": "Identifier of the project."
},
"contactId": {
"externalDocs": {
"url": "https://developer.xero.com/documentation/api/contacts"
},
"type": "string",
"format": "uuid",
"example": "01234567-89ab-cdef-0123-456789abcdef",
"description": "Identifier of the contact this project was created for."
},
"name": {
"type": "string",
"example": "New Kitchen",
"description": "Name of the project."
},
"currencyCode": {
"$ref": "#/components/schemas/CurrencyCode",
"type": "string"
},
"minutesLogged": {
"type": "integer",
"example": 0,
"description": "A total of minutes logged against all tasks on the Project."
},
"totalTaskAmount": {
"$ref": "#/components/schemas/Amount"
},
"totalExpenseAmount": {
"$ref": "#/components/schemas/Amount"
},
"estimateAmount": {
"$ref": "#/components/schemas/Amount"
},
"minutesToBeInvoiced": {
"type": "integer",
"example": 0,
"description": "Minutes which have not been invoiced across all chargeable tasks in the project."
},
"taskAmountToBeInvoiced": {
"$ref": "#/components/schemas/Amount"
},
"taskAmountInvoiced": {
"$ref": "#/components/schemas/Amount"
},
"expenseAmountToBeInvoiced": {
"$ref": "#/components/schemas/Amount"
},
"expenseAmountInvoiced": {
"$ref": "#/components/schemas/Amount"
},
"projectAmountInvoiced": {
"$ref": "#/components/schemas/Amount"
},
"deposit": {
"$ref": "#/components/schemas/Amount"
},
"depositApplied": {
"$ref": "#/components/schemas/Amount"
},
"creditNoteAmount": {
"$ref": "#/components/schemas/Amount"
},
"deadlineUtc": {
"type": "string",
"format": "date-time",
"example": "2019-12-10T12:59:59Z",
"description": "Deadline for the project. UTC Date Time in ISO-8601 format."
},
"totalInvoiced": {
"$ref": "#/components/schemas/Amount"
},
"totalToBeInvoiced": {
"$ref": "#/components/schemas/Amount"
},
"estimate": {
"$ref": "#/components/schemas/Amount"
},
"status": {
"type": "string",
"$ref": "#/components/schemas/ProjectStatus"
}
},
"required": [
"name"
]
}