Update Cash Flow Properties

PUT /ws/rest/service/v1/cashflow/{project_number}

Purpose

Update cash flow properties data. You can also use this REST service to add new curves to a cash flow.

Ensure the following:

If an attribute is not provided, the value will not be updated.

If an attribute is provided with value, it is validated and the value updated.

If an attribute is provided, but the value is empty, the value is deleted.

Any irrelevant attributes specified in the create/update request are ignored.

Tip: Use the response from the Get Cash Flow Properties REST service to write the update request.

Request Format

Send an API request in the above PUT format.

Request Parameters

The following parameters can be included in the API request:

Request Parameters

Required?

Data Type

Description

project_number

No

String

If the project_number is not provided, the company cash flow is fetched.

as_sch_cost_dist_opt

No

String

Displays the cost distribution when schedule is pulled from activity sheet. Valid values include:

  • 0: Consecutive Periods
  • 1: Exclude Gap Periods
  • 2: Honor Working Days

Response Format

The REST service returns a JSON map in the following format:

{

"data": [],

"message": [],

"status": <REST status code value>

}

A successful request returns a status code 200. Otherwise, a message with a corresponding status code is displayed.

Sample Request: Delete a Profile

Send a request in the following format to delete a profile from profile list of CBS or Summary CBS by providing an empty default profile as shown below:

"distribution": {

"type": "auto_profile",

"cbs": [

{

"cbs_code": "t30001~~t30002",

"bitemid": 242,

"item": "T30002",

"default_profile": ""

}

]

}

Sample Request: Delete a Change Commit BP

Send a request in the following format to delete a change commit BP list. Specify the "action" attribute value as "delete" as shown below:

"commit_change_processes": [

{

"bp_name": "PO Amendments",

"status": "Canceled",

"action":"delete"

}

]

Sample Request: Update Distribution Profile with a Commitment Detail Level Cash Flow

Send an API request in the following format to update distribution profiles with a Commitment detail level Cashflow, All values of "that profile map" must be provided. Other maps (or rows in UI) of bp_date_profiles which are not subject to update, are optional (may or may not be in bp_date_profiles list).

"bp_dates_profile": [

{

"bp_name": "PO Amendments",

"todate": "ugenP6PlannedFinishDOP",

"profile": "Back Loaded",

"fromdate": "due_date"

}

]

Sample Request: Delete Distribution Profile with a Commitment Detail Level Cash Flow

Send an API request in the following format to delete a distribution profile with a Commitment Detail level cash flow. Specify the correct "bp_name". Ensure the "to_date", "fromdate" & "profile" are empty strings, in "bp_dates_profiles as shown below:

"bp_dates_profile": [

{

"bp_name": "PO Amendments",

"todate": "",

"profile": "",

"fromdate": ""

}

]

Note: POST call has input & output both as JSON in the body.

Sample: Update Cashflow Manual - Project/Shell

{

"data":

{ "id":12,

"name": "project type cashflowupdated",

"description": null,

"rollup_status": "Active",

"detail_level": "Project / Shell",

"period_type": "Standard Planning Period",

"period_name": "Standard Planning Period",

"period_by": "Month",

"period_format": "M YYYY",

"decimal_places": 2,

"decimal_option": "0"

"snapshot": {

"sn_week_num": "First",

"sn_week_day": "Sunday",

"cutoff_spends": {

"cutoff_week_num": "First",

"cutoff_week_day": "Sunday",

"inc_spends_opt": "same_month"

}

},

"schedule": {

"enable_refresh": false

},

"summary": [

{

"name": "summary",

"summary_type": "User_Defined"

}

],

"curves": [

{

"name": "Actuals",

"type": "Spends",

"cost": {

"type":"cost_sheet",

"cost_sheet_column": "152 Base Commit WF (Approved)"

}

},

{

"name": "Cash flow3",

"type": "Derived",

"cost": {

"base_currency": "United States Dollar (USD)",

"source_curve_name": "Actuals",

"derived_curve_currency": "Australia Dollar (AUD)",

"exchange_rate": "Peg",

"peg_rate_as": "Dynamic",

"peg_dynamic_ds": "Single Record BPs / 922_Simple PNW/FSingle LL",

"peg_dynamic_de": "Currency amount 1",

"float_rate_as": "weighted_period"

}

},

{

"name": "Today",

"type": "Portfolio Budget",

"cost": {

"currency_code": "Australia Dollar (AUD)",

"distribut_amount_from": "approved"

}

},

{

"name": "Forecast",

"type": "Forecast",

"distribution": {

"type": "auto_profile",

"distribution_profile": "Front Load"

},

"cost": {

"type": "cost_sheet",

"cost_sheet_column": "152 Base Commit WF (Open)"

},

"schedule": {

"type": "manual"

},

"forecast_options": {

"begin_end_of_curve": true,

"fc_curve_name": "Actuals",

"current_actual_cut_off_date": true,

"fc_dist": "weighted_avg_over_next",

"periods": 3

}

}

]

}

}

Sample Response: CBS Curve to Update Periods of Cost Distribution

This is an example of a successful response to update the Periods of Cost Distribution (as_sch_cost_dist_opt) for a CBS Cash flow curve that uses a schedule from an activity sheet.

{

"data":

{

"id": 2091,

"name": "CBS Curve 3",

"description": null,

"rollup_status": "Active",

"detail_level": "CBS",

"period_type": "Standard Planning Period",

"period_name": "Standard Planning Period",

"period_by": "Month",

"period_format": "M YYYY",

"decimal_option": 0,

"decimal_places": 2,

"schedule": {

"enable_refresh": false

},

"curves": [

{

"id": 9577,

"name": "Baseline",

"type": "Baseline",

"variance": null,

"distribution": {

"type": "auto_profile"

},

"cost": {

"type": "auto_distribution"

},

"schedule": {

"type": "activity_sheet",

"sheet_name": "System Activity Sheet",

"sch_start_source": "Actual Start",

"sch_end_source": "Actual Finish",

"project_type": "Current",

"as_sch_cost_dist_opt": 0

}

}

],

"filters": {

"filter_option": "all"

},

"summary": [

{

"name": "Cash Flow Summary Curve",

"summary_type": "System_Defined"

}

]

}

}

Related Topics

Cash Flow

Authorization

Definitions or Values Used

Response Error Codes (REST API Details in Cash Flow)

Create Cash Flow

Create Summary Curve

Create Rollup Cash Flows for Company

Update Rollup Cash Flows for Company

Delete Cash Flow

Delete Cash Flow Curve

Delete Cash Flow - Summary Curves

Get Cash Flow Data

Get Summary Cash Flow Data

Get Rollup Status

Get Rollup Status - for Template Cash Flows

Update Rollup Status

Update Rollup Status - For Template Cash Flows

Refresh Cash Flow

Get Cash Flow Refresh Job Status

Get Cash Flow Properties

Get Summary Cash Flow Properties

Get Cash Flow Permissions

Get Distribution Profiles

Create (Add User or Group) Cash Flow Permission

Delete (Remove User or Group) Cash Flow Permission

Update or Modify Cash Flow Permission

Update Cash Flow Data

Update Cash Flow Schedule

Create Distribution Profiles

Update Distribution Profiles

Delete Distribution Profiles

Refresh Cash Flow Curves

Get Cash Flow Permissions



Last Published Tuesday, July 1, 2025