Budgets
Budgets endpoints return budget specific data for a client or project
Get Tabs
HTTP GET v2/Budgets/123/Tabs
Returns the tabs for a given Non-AEC project.
Response
[
{
"Id": "456",
"ProjectId": "123",
"Name": "Additional Fees",
}
]
Get Workstages
HTTP GET v2/Budgets/123/Stages
Returns the stages for a given project.
Response
[
{
"Id": "456",
"ProjectId": "123", // AEC only
"FeeType": "AEC", // AEC only
"Name": "Additional Fees",
"StartDate": "2023-01-01T00:00:00",
"EndDate": "2023-01-01T00:00:00",
}
]
Get Tasks
HTTP GET v2/Budgets/123/Tasks
Returns the tasks for a given project.
Response
[
{
"Id": "456",
"StageId": "789",
"Name": "Additional Fees",
"Notes": "",
"StartDate": "2023-01-01T00:00:00",
"EndDate": "2023-01-01T00:00:00",
"Roles": [
{
"Name": "Test Role",
"Hours": "7.5", // If BudgetInDays Feature is off
"Days": "1", // If BudgetInDays Feature is on
"Value": "100"
}
]
}
]
Get Externals
HTTP GET v2/Budgets/123/Externals
Returns the externals for a given AEC project.
Response
[
{
"StageId": "789",
"CalculationType": "Fixed Fee",
"BillingType": "Scheduled",
"Name": "External 1",
"CostPrice": "99.99",
"SalePrice": "99.99",
"ActualPrice": "99.99",
}
]
Create External
HTTP POST v1/budgets/1/externals
Create a new additional/external for the given project
Request
{
"name": "Taxi Travel",
"workstage": "Workstage Name",
"calculationType": "FixedFee", // One of PercentageOfConstructionCost, FixedFee
"billingType": "Scheduled", // One of Scheduled, Incurred, PassThrough
"costPrice": 250,
"salePrice": 150
}
Response
{
"id": 123
}
Update External
HTTP PUT v1/budgets/1/externals/1000
Update an additional/external for the given project
Request
{
"name": "Taxi Travel to Airport",
"workstage": "Workstage Name",
"calculationType": "PercentageOfConstructionCost", // One of PercentageOfConstructionCost, FixedFee
"billingType": "Incurred", // One of Scheduled, Incurred, PassThrough
"costPrice": 300,
"salePrice": 300
}
Response
{
"result": true
}
Get Additionals
HTTP GET v2/Budgets/123/Additionals
Returns the additionals for a given Non-AEC project.
Response
[
{
"Name": "External 1",
"CostPrice": "99.99",
"SalePrice": "99.99",
"ActualPrice": "99.99",
}
]
Get Additionals for Expense
HTTP GET v2/Budgets/123/ExpenseAdditionals
Returns a list of additionals for a given live Non-AEC project categorized by how they can be handled as part of an expense claim item request. Additionals marked as chargeable will appear in both the Charge
and No Charge
sections while those that aren’t will appear in the Allowance
section.
If the API user has permission to create new additionals on the project in question they will also get a Create New
entry for each handleType
with an Id
of 0
{
"categorizedAdditionals": [
{
"handleTypeId": 1,
"handleType": "Charge",
"additionals": [
{
"id": 123,
"name": "Site Visits"
}
]
},
{
"handleTypeId": 2,
"handleType": "No Charge",
"additionals": [
{
"id": 123,
"name": "Site Visits"
}
]
},
{
"handleTypeId": 3,
"handleType": "Allowance",
"additionals": [
{
"id": 456,
"name": "Printing & Delivery"
},
]
}
]
}
This endpoint is primarily intended to be used as part of creating or updating an expense claim item via the API. It will always return an empty categorizedAdditionals
array for projects/tenant configurations where handling expenses at claim time is not supported.
Get Adjustments
HTTP GET v2/Budgets/123/Adjustments
Returns the adjustments for a given Non-AEC project.
Response
[
{
"Description": "Test Adjustment",
"Value": "99",
}
]