Budget

Create a budget line

Changed on

Creates a budget line under parentId, with optional phase data keyed by phase ID.

post/projects/{projectId}/budget/lines

Request

  • Base URL: https://next-api.saturation.io/v1
  • URL: https://next-api.saturation.io/v1/projects/{projectId}/budget/lines
  • Auth: HTTP bearer

Path parameters

projectIdstring required

Project ID or slug.

Headers

Idempotency-Keystring required

A 16 to 255 character key for safe retries. Reusing the key with a different request returns 409 idempotency_conflict.

Request body

descriptionstring required

The line description.

type'account' | 'line' | 'subtotal' | 'fringe' | 'markup' | 'credit' | 'banner'

The budget line type.

accountIdstring

The account number. It does not need to be unique.

parentIdstring

A stable resource ID, such as prj_…, txn_…, or doc_….

contactIdstring

A stable resource ID, such as prj_…, txn_…, or doc_….

lineColorstring
emojistring
notesstring
subtotalSumAllAboveboolean
subtotalIsBoldboolean
markupAccountFilterstring
phaseDataobject

Optional initial editable phase data keyed by phase id.

Example request

{
  "description": "Camera Package",
  "type": "line",
  "accountId": "1110",
  "parentId": "lin_7c1a2f",
  "contactId": "con_panavision",
  "phaseData": {
    "phs_estimate": {
      "rate": 25000,
      "quantity": 4,
      "multiplier": 1
    }
  }
}

Response

The created budget line.

idstring required

A stable resource ID, such as prj_…, txn_…, or doc_….

accountIdstring nullable

The account number. It does not need to be unique.

pathstring nullable

The account path, such as 1100/1110.

type'account' | 'line' | 'subtotal' | 'fringe' | 'markup' | 'credit' | 'banner' required

The budget line type.

descriptionstring required

The line description.

parentIdstring required

A stable resource ID, such as prj_…, txn_…, or doc_….

depthinteger

The line's depth in the account tree. Root accounts have depth 0.

sortinteger required

The display order among lines with the same parent.

contactIdstring

A stable resource ID, such as prj_…, txn_…, or doc_….

lineColorstring nullable

The line color.

emojistring nullable
notesstring nullable

A plain-text note on the line.

tagIdsId[]

The IDs of tags on this line.

subtotalSumAllAboveboolean

For a subtotal line, whether to include every preceding line.

subtotalIsBoldboolean
markupAccountFilterstring nullable

For a markup line, the accounts included in the markup.

phaseTotalsobject

Totals keyed by phase ID. Included with expand=phaseTotals.

phaseDataobject

Editable phase data keyed by phase ID. Included with expand=phaseData.

Example response

{
  "id": "lin_7c1a2f",
  "accountId": "1100",
  "path": "1100",
  "type": "account",
  "description": "Camera",
  "parentId": "lin_root",
  "depth": 0,
  "sort": 0,
  "contactId": null,
  "tagIds": [
    "tag_vfx"
  ],
  "sourceId": null
}

Changes