A project estimate enables you to approximate how much a project might cost to complete. You can compare the actual costs against your estimate to determine if the project is progressing as expected.
Returns up to 100 object references from the collection with a key, ID, and link for each object. This operation is mostly for use in testing; use the query service to find objects that meet certain criteria and specify the properties that are returned.
OK
Bad Request
{- "ia::result": [
- {
- "key": "2",
- "id": "PJE-01-001",
- "href": "/objects/construction/project-estimate/2"
}, - {
- "key": "1",
- "id": "PJE-00-01",
- "href": "/objects/construction/project-estimate/1"
}
], - "ia::meta": {
- "totalCount": 2,
- "start": 1,
- "pageSize": 100,
- "next": null,
- "previous": null
}
}
Creates a new project estimate.
Project estimate to create
id required | string Unique identifier of the project estimate. You must specify a unique ID when creating a project estimate unless document sequencing is configured, in which case the ID is auto-generated. Example: "BTI-Estimate-01" | ||||||||||||||||||||||
required | object Reference to the project that this estimate is for. | ||||||||||||||||||||||
| |||||||||||||||||||||||
description | string Description of the project estimate. Example: "Estimation for BTI" | ||||||||||||||||||||||
postTo | string Default: "firstPeriod" Posting period for the project estimate.
Example: "firstPeriod" | ||||||||||||||||||||||
status | string Default: "active" The project estimate status.
Example: "active" | ||||||||||||||||||||||
isPrimary | boolean Default: false Specifies whether the estimate is primary for the project. During create, the first estimate for a project is set to primary. This value can be changed in an update. Example: false | ||||||||||||||||||||||
isPosted | boolean Default: false Specifies whether the estimate is posted to GL budgets. In an update, if this is set to false, then any existing GL budgets for that project estimate will be deleted. Example: false | ||||||||||||||||||||||
estimateDate | string <date> Date of the project estimate, which must be in a budgetable period. Example: "2022-06-23" | ||||||||||||||||||||||
object Reference to the budget that the estimate will be posted to. The budget must have | |||||||||||||||||||||||
| |||||||||||||||||||||||
object Reference to the project estimate type. | |||||||||||||||||||||||
| |||||||||||||||||||||||
Array of objects Array of project estimate lines. | |||||||||||||||||||||||
Array
| |||||||||||||||||||||||
object Supporting document for this vendor. | |||||||||||||||||||||||
|
Created
Bad Request
{- "id": "PE-CB-BTI-003",
- "description": "PE-CB-BTI-003",
- "estimateDate": "2024-03-14",
- "isPrimary": false,
- "status": "active",
- "postTo": "firstPeriod",
- "budget": {
- "key": "2"
}, - "projectEstimateType": {
- "key": "7"
}, - "project": {
- "key": "1"
}, - "projectEstimateLines": [
- {
- "externalUOM": "Hour",
- "quantity": "10.00",
- "unitCost": "300.00",
- "amount": "3000.00",
- "numberOfProductionUnits": 0,
- "workflowType": "original",
- "glAccount": {
- "key": "210"
}, - "dimensions": {
- "department": {
- "key": "3"
}, - "project": {
- "key": "1"
}, - "item": {
- "key": "17"
}, - "costType": {
- "key": "17"
}, - "class": {
- "key": "6"
}, - "task": {
- "key": "1"
}
}
}, - {
- "externalUOM": "Box",
- "quantity": "10.00",
- "unitCost": "300.00",
- "amount": "3000.00",
- "numberOfProductionUnits": 0,
- "workflowType": "original",
- "glAccount": {
- "key": "210"
}, - "dimensions": {
- "department": {
- "key": "3"
}, - "project": {
- "key": "1"
}, - "item": {
- "key": "17"
}, - "costType": {
- "key": "87"
}, - "class": {
- "key": "6"
}, - "task": {
- "key": "10"
}
}
}
]
}
{- "ia::result": {
- "key": "27",
- "id": "PE-CB-BTI-003",
- "href": "/objects/construction/project-estimate/27"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Returns detailed information for a specified project estimate.
key required | string System-assigned key for the project estimate. Example: 27 |
OK
Bad Request
{- "ia::result": {
- "key": "27",
- "id": "PE-CB-BTI-003",
- "description": "PE-CB-BTI-003",
- "estimateDate": "2024-03-14",
- "isPrimary": false,
- "status": "active",
- "isPosted": false,
- "budget": {
- "key": "2",
- "id": "Root PJ Estimates",
- "href": "/objects/general-ledger/budget/2"
}, - "postTo": "firstPeriod",
- "project": {
- "key": "1",
- "id": "DIM - BTI",
- "name": "Dimensions - Berkeley Technology Inc",
- "beginDate": "2000-01-01",
- "endDate": "2023-12-31",
- "href": "/objects/projects/project/1"
}, - "projectEstimateType": {
- "key": "7",
- "id": "Original",
- "workflowTypes": [
- "original"
], - "href": "/objects/construction/project-estimate-type/7"
}, - "currency": "USD",
- "totalEstimateAmount": "6000.00",
- "location": {
- "key": "1",
- "id": "USA",
- "name": "United States of America"
}, - "parentProject": {
- "key": "2",
- "id": "DIM",
- "name": "Dimensions"
}, - "customer": {
- "key": "14",
- "id": "BTI",
- "name": "Berkeley Technology Inc",
- "href": "/objects/accounts-receivable/customer/14"
}, - "attachment": {
- "id": "Doc001"
}, - "audit": {
- "modifiedDateTime": "2023-03-14T06:25:35Z",
- "createdDateTime": "2023-03-14T06:25:35Z",
- "modifiedBy": "1",
- "createdBy": "1"
}, - "projectEstimateLines": [
- {
- "id": "68",
- "key": "68",
- "lineNumber": 1,
- "projectEstimate": {
- "id": "PE-CB-BTI-003",
- "key": "27",
- "href": "/objects/construction/project-estimate/27"
}, - "externalUOM": "Hour",
- "quantity": "10",
- "unitCost": "300.00",
- "amount": "3000.00",
- "memo": "memo for item 1",
- "currency": "USD",
- "workflowType": "original",
- "isPosted": false,
- "glAccount": {
- "key": "210",
- "id": "5001.03",
- "name": "Construction Miscellaneous",
- "href": "/objects/general-ledger/account/210"
}, - "dimensions": {
- "department": {
- "key": "3",
- "id": "3",
- "name": "Engineering",
- "href": "/objects/company-config/department/3"
}, - "location": {
- "key": "1",
- "id": "1",
- "name": "United States of America",
- "href": "/objects/company-config/location/1"
}, - "project": {
- "key": "1",
- "id": "DIM - BTI",
- "name": "Dimensions - Berkeley Technology Inc",
- "href": "/objects/projects/project/1"
}, - "customer": {
- "key": "14",
- "id": "BTI",
- "name": "Berkeley Technology Inc",
- "href": "/objects/accounts-receivable/customer/14"
}, - "vendor": {
- "key": "357",
- "id": "1605212096809",
- "name": "GenLab"
}, - "employee": {
- "key": "10",
- "id": "EMP-10",
- "name": "Thomas"
}, - "item": {
- "key": "17",
- "id": "Design",
- "name": "Design",
- "href": "/objects/inventory-control/item/17"
}, - "class": {
- "key": "6",
- "id": "4",
- "name": "Professional Services",
- "href": "/objects/company-config/class/6"
}, - "task": {
- "key": "1",
- "id": "TSK-RT-0001",
- "name": "DIM - BTI01",
- "href": "/objects/projects/task/1"
}, - "costType": {
- "key": "17",
- "id": "GNC",
- "name": "General Conditions DIM-BTI 0001",
- "href": "/objects/construction/cost-type/17"
}
}, - "effectiveDate": "2022-06-23",
- "numberOfProductionUnits": 0,
- "productionUnitDescription": "days",
- "changeRequest": {
- "key": "1",
- "id": "CR-TM-02",
- "href": "/objects/construction/change-request/1"
}, - "changeRequestLine": {
- "key": "1",
- "id": "1",
- "href": "/objects/construction/change-request-line/1"
}, - "audit": {
- "modifiedDateTime": "2023-03-14T00:00:00Z",
- "createdDateTime": "2023-03-14T00:00:00Z",
- "modifiedBy": "1",
- "createdBy": "1"
}, - "href": "/objects/construction/project-estimate-line/68"
}, - {
- "id": "69",
- "key": "69",
- "lineNumber": 2,
- "projectEstimate": {
- "id": "PE-CB-BTI-003",
- "key": "27",
- "href": "/objects/construction/project-estimate/27"
}, - "externalUOM": "Box",
- "quantity": "10",
- "unitCost": "300.00",
- "amount": "3000.00",
- "memo": "memo for item 2",
- "currency": "USD",
- "workflowType": "original",
- "isPosted": false,
- "glAccount": {
- "key": "210",
- "id": "5001.03",
- "name": "Construction Miscellaneous",
- "href": "/objects/general-ledger/account/210"
}, - "dimensions": {
- "department": {
- "key": "3",
- "id": "3",
- "name": "Engineering",
- "href": "/objects/company-config/department/3"
}, - "location": {
- "key": "1",
- "id": "1",
- "name": "United States of America",
- "href": "/objects/company-config/location/1"
}, - "project": {
- "key": "1",
- "id": "DIM - BTI",
- "name": "Dimensions - Berkeley Technology Inc",
- "href": "/objects/projects/project/1"
}, - "customer": {
- "key": "14",
- "id": "BTI",
- "name": "Berkeley Technology Inc",
- "href": "/objects/accounts-receivable/customer/14"
}, - "vendor": {
- "key": "357",
- "id": "1605212096809",
- "name": "GenLab"
}, - "employee": {
- "key": "10",
- "id": "EMP-10",
- "name": "Thomas"
}, - "item": {
- "key": "17",
- "id": "Design",
- "name": "Design",
- "href": "/objects/inventory-control/item/17"
}, - "class": {
- "key": "6",
- "id": "4",
- "name": "Professional Services",
- "href": "/objects/company-config/class/6"
}, - "task": {
- "key": "10",
- "id": "TSK-RT-0022",
- "name": "DIM - BTI10",
- "href": "/objects/projects/task/10"
}, - "costType": {
- "key": "87",
- "id": "LABOR",
- "name": "LABOR GROUP DIM-BTI 0022",
- "href": "/objects/construction/cost-type/87"
}
}, - "effectiveDate": "2022-06-23",
- "numberOfProductionUnits": 0,
- "productionUnitDescription": "days",
- "changeRequest": {
- "key": "1",
- "id": "CR-TM-02",
- "href": "/objects/construction/change-request/1"
}, - "changeRequestLine": {
- "key": "1",
- "id": "1",
- "href": "/objects/construction/change-request-line/1"
}, - "audit": {
- "modifiedDateTime": "2023-03-14T00:00:00Z",
- "createdDateTime": "2023-03-14T00:00:00Z",
- "modifiedBy": "1",
- "createdBy": "1"
}, - "href": "/objects/construction/project-estimate-line/69"
}
], - "href": "/objects/construction/project-estimate/27"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Updates an existing project estimate by setting field values. Any fields not provided remain unchanged.
If the budget
reference is change when isPosted
is true
, the estimate is unposted from the first budget and posted to the new budget.
key required | string System-assigned key for the project estimate. Example: 27 |
description | string Description of the project estimate. Example: "Estimation for BTI" | ||||||||||||||||||||||
postTo | string Default: "firstPeriod" Posting period for the project estimate.
Example: "firstPeriod" | ||||||||||||||||||||||
status | string Default: "active" The project estimate status.
Example: "active" | ||||||||||||||||||||||
isPrimary | boolean Default: false Specifies whether the estimate is primary for the project. During create, the first estimate for a project is set to primary. This value can be changed in an update. Example: false | ||||||||||||||||||||||
isPosted | boolean Default: false Specifies whether the estimate is posted to GL budgets. In an update, if this is set to false, then any existing GL budgets for that project estimate will be deleted. Example: false | ||||||||||||||||||||||
estimateDate | string <date> Date of the project estimate, which must be in a budgetable period. Example: "2022-06-23" | ||||||||||||||||||||||
object Reference to the budget that the estimate will be posted to. The budget must have | |||||||||||||||||||||||
| |||||||||||||||||||||||
object Reference to the project that this estimate is for. | |||||||||||||||||||||||
| |||||||||||||||||||||||
object Reference to the project estimate type. | |||||||||||||||||||||||
| |||||||||||||||||||||||
Array of objects Array of project estimate lines. | |||||||||||||||||||||||
Array
| |||||||||||||||||||||||
object Supporting document for this vendor. | |||||||||||||||||||||||
|
OK
Bad Request
{- "description": "Project estimate for BUD BTI- update4",
- "estimateDate": "2022-06-24",
- "projectEstimateLines": [
- {
- "key": "70",
- "externalUOM": "Seconds",
- "quantity": "10.00",
- "unitCost": "500.00",
- "amount": "5000.00",
- "numberOfProductionUnits": 0,
- "workflowType": "original",
- "glAccount": {
- "key": "210"
}, - "dimensions": {
- "department": {
- "key": "7"
}, - "project": {
- "key": "1"
}, - "item": {
- "key": "17"
}, - "costType": {
- "key": "17"
}, - "class": {
- "key": "2"
}, - "task": {
- "key": "1"
}
}
}, - {
- "externalUOM": "Seconds",
- "quantity": "10.00",
- "unitCost": "600.00",
- "amount": "6000.00",
- "numberOfProductionUnits": 0,
- "workflowType": "original",
- "glAccount": {
- "key": "210"
}, - "dimensions": {
- "department": {
- "key": "7"
}, - "project": {
- "key": "1"
}, - "item": {
- "key": "17"
}, - "costType": {
- "key": "17"
}, - "class": {
- "key": "2"
}, - "task": {
- "key": "1"
}
}
}
]
}
{- "ia::result": {
- "key": "23",
- "id": "PE-GL-T001",
- "href": "/objects/construction/project-estimate/23"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Deletes a project estimate. A primary project estimate cannot be deleted.
key required | string System-assigned key for the project estimate. Example: 27 |
No Content
Bad Request
{- "ia::result": {
- "ia::error": {
- "code": "invalidRequest",
- "message": "A POST request requires a payload",
- "errorId": "REST-1028",
- "additionalInfo": {
- "messageId": "IA.REQUEST_REQUIRES_A_PAYLOAD",
- "placeholders": {
- "OPERATION": "POST"
}, - "propertySet": { }
}, - "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
}
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 0,
- "totalError": 1
}
}
Queries an object for filtered data.
object | string Object type to query, in the form Example: "construction/project-estimate" | ||||||||
fields | Array of strings List of fields to include in the response. Can be any combination of these:
Example: ["key","id","max:vendor.creditLimit"] | ||||||||
Array of equal (object) or not equal (object) or less than (object) or (less than or equal (object)) or greater than (object) or (greater than or equal (object)) or in (object) or not in (object) or between (object) or not between (object) or contains (object) or does not contain (object) or starts with (object) or does not start with (object) or ends with (object) or does not end with (object) Filter conditions to select the objects to return based on their field values. You use operators and conditions to build your filter, such as Example: [{"$eq":{"status":"active"}},{"$gt":{"totalDue":"1000"}},{"$contains":{"name":"Acme"}}] | |||||||||
Array Any of: Field value must be equal to this specified value. For date fields, you can use these macro values that are relative to the current date or the
These are most useful for queries that you want to save and use repeatedly, such as for views or reports. Just change the For example,
| |||||||||
filterExpression | string Default: "and" Logical operators to apply when there are multiple filter conditions. The conditions in the Shortcuts:
Example: "(1 and 2) or 3" | ||||||||
| |||||||||
Array of objects Set the order of the results by specifying field names to sort by and whether they should be in ascending or descending order. Example: [{"totalDue":"asc"},{"lastPaymentMadeDate":"desc"}] | |||||||||
Array
| |||||||||
start | integer First record of the result set to include in the response. Example: 1 | ||||||||
size | integer Number of records to include in the response. Example: 100 |
OK
Bad Request
{- "object": "accounts-payable/vendor",
- "fields": [
- "id",
- "name",
- "status",
- "href"
], - "filters": [
- {
- "$eq": {
- "status": "active"
}
}, - {
- "$eq": {
- "billingType": "openItem"
}
}
], - "filterExpression": "1 and 2",
- "orderBy": [
- {
- "id": "asc"
}
]
}
{- "ia::result": [
- {
- "id": "Vend-00002",
- "name": "Test vendor",
- "status": "active",
- "href": "/objects/accounts-payable/vendor/85"
}, - {
- "id": "VEND-00010",
- "name": "Design Works",
- "status": "active",
- "href": "/objects/accounts-payable/vendor/111"
}
], - "ia::meta": {
- "totalCount": 2,
- "start": 1,
- "pageSize": 100,
- "next": null,
- "previous": null
}
}