Activities

Prev Next

Activities

/v1/activities

List Of Activities


Example for calling:

http://server/v1/activities/1 - retrieves all activities for the network with network id = 1

http://server/v1/activities?network_id=1 – retrieves all activities in the network having id = 1

http://server/v1/activities?network_id=1&subnetwork_id=2 – retrieves all activities in network having id = 1 and subnet id = 2

http://server/v1/activities?id=1 – retrieves all activities having id = 1

http://server/v1/activities - will produce "400 - Bad Request" as the list of activities could be very large.

http://server/v1/activities?network_id=1&subnetwork_id=205&uf_flag21=false&uf_date10=2022-01-04T07:28:00.000&uf_ref4=DG4&current_progress=100.0 – retrieves all activities in network matching all given request fields.

http://server/v1/activities?network_id=1&Unsupported=1 - will produce "200 - OK" with an empty result, as the API does not recognise the Unsupported as a request field.

http://server/v1/activities?network_id=1&meta_field_select=id - retrieves all activities in project 1 but lists only the network_id and id fields.

http://server/v1/activities?network_id=1&cancelled=null - retrieves all activities in project 1 which has not been cancelled.

Request Body = {….} see request fields below

Allowed Methods:

[GET]
API Controller: activities

Description:

Lists activities for the supplied network_id, sorted by activity id. Though stored in the activities table as sequences, Reference and Outline code user fields are resolved to their actual field values.

Request Fields:

Name Type Description Notes
network_id integer Network Id [Optional] Returns all activities if none specified
id integer Activity Id [Optional] Returns activities with seq = ID.
owner string Networks owner [Optional] Relates to "SafranWebAPIOwnerVerificationDuringApiCalls" in Application Settings
item_guid guid Activity guid [Optional] Returns activity with given guid
subnetwork_id integer The Sub network id the activity belongs within. [Optional] Returns all activities if none specified, requires network_id.
meta_field_exclude string Comma separated list of field names to exclude in the response object(s) [Optional] All fields are returned if not specified.
meta_field_select string Comma separated list of field names to include in response object(s) [Optional] All fields are returned if not specified, else only* the fields listed will be included in the return result.* some fields are mandatory and will be included regardless.
meta_include_resources integer Specifies whether to include resources assigned to activity in response. [Optional] Will not return resources if not specified, unsupported at the moment.
meta_limit integer A limit on the number of activities to be returned by this call [Optional] Will return all network activities if no limit specified, unsupported at the moment.
meta_ending_at integer Activity Id for selecting the activity range prior. Could be used for breaking down retrieval into multiple calls (pagination, for example) [Optional]Example: If a project has activity id’s 1 - 1000, and the call is made with meta_ending_at = 500, activities 1-500 would be selected.
meta_starting_after integer Activity Id for selecting the activity range after. Could be used for breaking down retrieval into multiple calls (pagination, for example) [Optional]Example: If a project has activity id’s 1 - 1000, and the call is made with meta_starting_after = 500, activities 501-1000 would be selected.
meta_ending_at_row integer Row Number selecting activity range prior. Could be used for breaking down retrieval into multiple calls (pagination, for example) [Optional]Specifies the last row number in the ordered result set to include in the response. Use this parameter together with meta_starting_at_row to define a range of rows for efficient data retrieval.
meta_starting_after_row integer Row Number for selecting activity range after. Could be used for breaking down retrieval into multiple calls (pagination, for example) [Optional] Indicates the starting row number in the ordered result set, after which rows will be included in the response. Use this parameter together with meta_starting_at_row to define a range of rows for efficient data retrieval.
meta_updated_after string Datetime in ISO-8601 format, using UTC time zone [Optional]Find activities which was updated after given time stamp. Example: If a project has activities that are updated every day in April, and the call is made with meta_updated_after = "20220414T140000.001Z". All activities which were modified after that time will be selected.
meta_updated_prior string Datetime in ISO-8601 format, using UTC time zone [Optional]Find activities which was updated prior given time stamp.
meta_mapuserfieldtolabel bool Define what the attribute for the user fields should contain. [Optional] The default value is false. Typically the JSON result host uf_textX, uf_dateX, uf_decX, uf_numX, uf_flagX, uf_durX, uf_refX, uf_outX. When set to true, these are replaced with the label as per defined in the database on table userfield_config.label
  • When id or item_guid is used, the following will be ignored

    • meta_ending_at
    • meta_starting_after
    • meta_ending_at_row
    • meta_starting_after_row
    • meta_updated_after
    • meta_updated_prior
  • The following will only be considered when network_id is used:

    • meta_ending_at
    • meta_starting_after
    • meta_ending_at_row
    • meta_starting_after_row
    • meta_updated_after
    • meta_updated_prior
  • Combining meta_ending_at and meta_starting_after with meta_ending_at_row and meta_starting_after_row is unsupported.

  • Items marked in grey are only listed for historical reasons and are not implemented.

  • When specifying subnetwork_id, the network_id must also be specified.

  • Most of the Response Fields can be used as part of the Request Fields. The list of fields below, but not limited too, cannot be used.

    • duration_units
    • duration_format
  • Meta_field_exclude, most of the fields listed in the Response Fields can be excluded, except for:

    • id
    • network_id
  • Meta_field_include, most of the fields listed in the Response Fields can be included and excluding all others, except for the following which will always be included:

    • id
    • network_id
  • In the case both "Meta_field_exclude" and "Meta_field_select" is specified the "Meta_field_exclude" takes priority.

  • meta_mapuserfieldtolabel

    • When meta_mapuserfieldtolabel is set to true, user field attribute names in the JSON response are replaced with their configured labels.
    • If the API response contains a user field such as uf_ref1, and the label for Reference Field 1 is defined as “Construction”, the response will return the field using the label name instead of the technical field name. In other words:
      • uf_ref1 → Construction
      • uf_ref2 → <label defined for Reference Field 2>
      • and so on
    • Response before mapping
      • { "uf_ref1": "Building A", "uf_ref2": "Phase 2" }
    • Response after mapping
      • { "Construction": "Building A", "Phase 2": "Phase 2" }
    • Important notes
      • All user field labels must be unique. If two user fields share the same label, the JSON response may contain duplicate attribute names, which can lead to data loss or parsing errors.
      • This option only affects the JSON attribute names, not the underlying user field values or definitions.


Response Fields:

Activity:

Name Type Description Notes
id integer Unique activity Id
name string Activity name
duration integer Duration
duration_units string Units for duration field “days” or “hours”
duration_format string Formating unit for the duration field "weeks"
"days"
"hours"
"minutes"
"undefined" - meaning database value is null or 0
percent_complete float Percent complete
remaining_duration integer Remaining duration
calendar integer Calendar
target_start_early datetime Target start early
target_start_late datetime Target start late
target_complete_early datetime Target complete early
target_complete_late datetime Target complete late
actual_start datetime Actual start
actual_finish datetime Actual finish
early_start datetime Early start
early_finish datetime Early finish
early_start_analyzed datetime Early Start Analysed
late_start datetime Late start
late_finish datetime Late finish
total_float integer Total float
free_float integer Free float
description string Activity description
subnetwork_id integer Sub-Network Id
network_id integer Network Id
on_target integer Flag for automatic linear progress
job_flag integer Flag for “all job packs defined”
current_progress float Current progress
frontline_date datetime Frontline date against baseline
cancelled datetime Cancelled date
remarks string Remarks
original_qty float Original (1.st Baseline)quantity
approved_vo_qty float Approved variations quantity
estimated_vo_qty float Quantities for estimated variation
subcontr_vo_qty float Quantities for subcontracted work/variations
internal_vo_qty float Quantities for internal variation orders
jobpack_est_qty float Jobpack estimated quantities
expended_qty float Actual expended quantities
current_actual_start datetime Current actual start
current_actual_finish datetime Current actual finish
current_planned_progress float Current planned progress
baseline_planned_progress float Baseline planned progress
original_early_start datetime Original early start
original_early_finish datetime Original early finish
original_late_start datetime Original late start
original_late_finish datetime Original late finish
baseline_early_start datetime Baseline early start
baseline_early_start_analyzed datetime Baseline early start analyzed
baseline_early_finish datetime Baseline early finish
baseline_late_start datetime Baseline late start
baseline_late_finish datetime Baseline late finish
current_early_start datetime Current early start
current_early_start_actual datetime Current early start actual
current_early_finish datetime Current early finish
current_late_start datetime Current late start
current_late_finish datetime Current late finish
current_remaining_duration int Current remaining duration
original_qty_1 float Original (1.st baseline) quantity1 (summary of qty1 in resources)
baseline_scope float Baseline scope (configurable summary)
current_scope float Current scope (configurable summary)
total_scope float Total scope (configurable summary)
current_frontline_date datetime Frontline date against current plan
early_start_scheduled datetime Early start scheduled
early_finish_scheduled datetime Early finish scheduled
early_start_actual_scheduled datetime Early Start Actual Scheduled
total_float_scheduled integer Total float scheduled
free_float_scheduled integer Free float scheduled
hammock_flag integer Hammock flag
analyse_opt integer Future use
fixed_start_date datetime Fixed start date
fixed_finish_date datetime Fixed finish date
manual_prog_flag integer Is activity manually progress updated? 1=yes, 0=no
current_pc float Time percent completed – related to current_progress
remain_duration_analyzed integer Remaining duration analyzed
current_total_float integer Current total float
current_free_float integer Current free float
live_plan_out_of_sequence integer Live plan out of sequence flag, computed by live analysis
look_ahead integer minimum continous duration
look_ahead_unit integer minimum continous start duration, unit
current_plan_out_of_sequence integer Current plan out of sequence flag, computed by current analysis
out_of_sync integer Progress out of sync flag. Is set to 1 for activity during baseline update if volume progress and time progress is not matching for at least one resource
forecast_duration integer Forecast duration
forecast_plan_early_start_actual datetime Forecast plan early start actual
forecast_early_finish datetime Forecast early finish
revised_plan_early_start_actual datetime Revised plan early start actual
revised_plan_early_start datetime Revised plan early start
revised_plan_early_finish datetime Revised plan early finish
revised_plan_late_start datetime Revised plan late start
revised_plan_late_finish datetime Revised plan late finish
rev_frontline_date datetime Progress frontline for revised plan
revised_planned_prog float Revised planned progress
forecast_qty float Forecast quantity
row_no integer Barchart Editor: row number in outline view
outline_level integer Barchart Editor: indent level in outline view
link_summary integer not in use
computed_percent_complete float Computed percent complete
revised_scope float Revised scope
earned_value_method string Earned value method
earned_value_parameter string Earned value parameter
minimum_duration integer Minimum duration, used with activity fit option
activity_existence_flag integer Activity existence flag
activity_duration_fit_flag integer Activity duration fit flag
as_late_as_possible_flag integer As late as possible constraint flat
uf_text1 : uf_text100 string Text user fields See note below
uf_date1 : uf_date100 datetime Date user fields See note below
uf_dec1 : uf_dec100 float Decimal user fields See note below
uf_num1 : uf_num20 integer Number user fields See note below
uf_flag1 : uf_flag100 boolean Flag user fields See note below
uf_dur1 : uf_dur100 integer Duration user fields See note below
uf_ref1 : uf_ref100 reference Reference user fields. One item of object of type reference, see Reference user field table See note below
uf_out1 : uf_out30 string Outline code user fields. One item of object of type outline code, see Outline code user field table See note below
resources resource[] Collection of resource objects belonging to activity. See Resources table included only if meta_include_resources flag is set
ActivityType integer The activity Type 0 = Activity
1 = Hammock
5 = Start Milestone
6 = Finish Milestone
item_guid guid guid of the activity
lastupdatedutc datetime Date and time when activity was updated Time is in Coordinated Universal Time

Activities Note

  • User fields, marked as invisible will not be part of the result set.
  • uf_date
    • In version 5 only 20 are used.
    • In version 9 this was increased to 100.
    • Number of fields may vary between versions.
  • uf_dec
    • In version 5 only 10 are used.
    • In version 9 this was increased to 100.
    • Number of fields may vary between versions.
  • uf_num
    • Not used in version 7 and later
  • uf_flag
    • In version 5 only 20 are used.
    • In version 9 this was increased to 100.
    • Number of fields may vary between versions.
  • uf_dur
    • These are user input fields and will be delivered as inputted by the user.
    • They will not be converted from string database field with magnitude + unit.
    • In version 9 this was increased to 100.
    • Number of fields may vary between versions.
  • uf_ref
    • In version 5 only 30 are used.
    • In version 9 this was increased to 100.
    • Number of fields may vary between versions.
  • uf_out
    • Number of fields may vary between versions.

activity.uf_ref

Reference user field table
Name Type Description Note
description string The Reference fields description
_short string The Reference fields short code


Outline code user field table
Name Type Description Note
description string The outline code field description
_short string The outline code field short code


activity.resource

Resources table
Name Type Description Note
id integer Resource unique Id
activity_id integer Id for activity resource is assigned to
resource_def_id integer Resource set Id
qty float Quantity
duration integer Resource duration
duration_format string Formating unit for the duration field "weeks"
"days"
"hours"
"minutes"
"undefined" - meaning database value is null or 0
relative_lag integer Lag (relative to Activity start)
type integer Resource type
profile integer Resource profile Id
vo_seq integer (Variation order) Change Order sequence number
changeorder_number string Change order number as specified by the user.
changeorder_type string Change order type:
V = Variation Order
R = Variation Order Request
I = Internal Change
S = Subcontracted
current_progress float Current progress (Volume)
actual_qty float Actual expended quantity
jobpack_est_qty float Jobpack estimated quantity
calendar integer Calendar
qty1 float Quantity
csh_flag integer Flag for inclusion in Csh, Internal flag: baseline scope (configurable summary)
rsh_flag integer Flag for inclusion in Rsh, Internal flag: current scope (configurable summary)
tsh_flag integer Flag for inclusion in Tsh, Internal flag: total scope (configurable summary)
network_id integer Network Id
earned_job_qty float Earned against job (from jobcard system, Safran details, etc)
early_start_date datetime Early start for resource
early_finish_date datetime Early finish for resource
late_start_date datetime Late start for resource
late_finish_date datetime Late finish for resource
cost float Cost quantity
cost1 float Contract cost quantity
cost_rate float Cost rate for resource
cost_actual float Actual expended cost quantity
pl_prog_cum_early float Planned progress early cumulative
forecast_qty float Forecast quantity
forecast_lag float Forecast lag
forecast_duration float Forecast duration
ext_seq integer for S4MsP compatibility
name string Resource definition name
descr string Resource definition description

Example for resources table:
API Methods Activities Resource table


Sample JSON Response

json result

[
    {
        "lastupdatedutc": "2022-01-31T15:05:48.95",
        "item_guid": "00000000-0000-0000-0000-000000000000",
        "uf_flag21": false,
        "uf_flag22": false,
        "uf_flag23": false,
        "uf_flag24": false,
        "uf_flag25": false,
        "uf_flag26": false,
        "uf_flag27": false,
        "uf_flag28": false,
        "uf_flag29": false,
        "uf_flag30": false,
        "uf_flag31": false,
        "uf_flag32": false,
        "uf_flag33": false,
        "uf_flag34": false,
        "uf_flag35": false,
        "uf_flag36": false,
        "uf_flag37": false,
        "uf_flag38": false,
        "uf_flag39": false,
        "uf_flag40": false,
        "must_start_on_day": 0,
        "uf_text21": "",
        "uf_text22": "28.Apr.2022",
        "uf_text23": "",
        "uf_text24": "",
        "uf_text25": "",
        "uf_text26": "",
        "uf_text27": "",
        "uf_text28": "",
        "uf_text29": "",
        "uf_text30": "",
        "uf_text31": "",
        "uf_text32": "",
        "uf_text33": "",
        "uf_text34": "",
        "uf_text35": "",
        "uf_text36": "",
        "uf_text37": "",
        "uf_text38": "",
        "uf_text39": "",
        "uf_text40": "",
        "uf_dec20": 20.0,
        "ActivityType": 0,
        "id": 8870,
        "name": "1110010508-SA4",
        "duration": 0,
        "duration_units": "days",
        "duration_format": "undefined",
        "calendar": 2,
        "target_start_early": "2021-06-22T00:00:00",
        "target_complete_late": "2021-04-28T00:00:00",
        "early_start": "2021-06-22T00:00:00",
        "early_finish": "2021-06-21T00:00:00",
        "late_start": "2021-04-29T00:00:00",
        "late_finish": "2021-04-28T00:00:00",
        "total_float": 44,
        "free_float": 0,
        "description": "SA4",
        "subnetwork_id": 214,
        "network_id": 100009,
        "on_target": 0,
        "current_progress": 100.0,
        "remarks": "",
        "early_start_analyzed": "2021-06-12T00:00:00",
        "total_float_scheduled": 0,
        "free_float_scheduled": 0,
        "hammock_flag": 0,
        "analyse_opt": 0,
        "manual_prog_flag": 1,
        "remain_duration_analyzed": 0,
        "live_plan_out_of_sequence": 0,
        "current_plan_out_of_sequence": 1,
        "earned_value_method": "",
        "earned_value_parameter": "",
        "minimum_duration": 0,
        "activity_existence_flag": 0,
        "activity_duration_fit_flag": 0,
        "as_late_as_possible_flag": 0,
        "uf_text1": "",
        "uf_text2": "",
        "uf_text3": "",
        "uf_text4": "",
        "uf_text5": "",
        "uf_text6": "",
        "uf_text7": "",
        "uf_text8": "MOD_Manuelt",
        "uf_text9": "",
        "uf_text10": "",
        "uf_text11": "",
        "uf_text12": "",
        "uf_text13": "",
        "uf_text14": "",
        "uf_text15": "",
        "uf_text16": "",
        "uf_text17": "",
        "uf_text18": "",
        "uf_text19": "",
        "uf_text20": "",
        "uf_date7": "2021-06-22T00:00:00",
        "uf_date9": "2020-09-27T00:00:00",
        "uf_date10": "2020-10-22T00:00:00",
        "uf_dec2": 100.0,
        "uf_flag1": true,
        "uf_flag2": false,
        "uf_flag3": false,
        "uf_flag4": false,
        "uf_flag5": false,
        "uf_flag6": false,
        "uf_flag7": false,
        "uf_flag8": false,
        "uf_flag9": false,
        "uf_flag10": false,
        "uf_flag11": false,
        "uf_flag12": false,
        "uf_flag13": false,
        "uf_flag14": false,
        "uf_flag15": false,
        "uf_flag16": false,
        "uf_flag17": false,
        "uf_flag18": false,
        "uf_flag19": false,
        "uf_flag20": false,
        "uf_ref1": {
            "description": "Safran",
            "_short": "SA"
        },
        "uf_ref2": {
            "description": "Stavanger",
            "_short": "SVG"
        },
        "uf_ref4": {
            "description": "Operation phase",
            "_short": "SA4"
        },
        "uf_ref5": {
            "description": "Milestones",
            "_short": "MI"
        },
        "uf_ref6": {
            "description": "Risk zone 1",
            "_short": "Risk1"
        },
        "uf_ref9": {
            "description": "Active",
            "_short": "2"
        },
        "uf_ref11": {
            "description": "Maintenance",
            "_short": "M.1995.20"
        },
        "uf_ref12": {
            "description": "Oslo",
            "_short": "OSL"
        },
        "uf_ref13": {
            "description": "Molde",
            "_short": "MLD"
        },
        "uf_ref14": {
            "description": "East",
            "_short": "EA"
        },
        "uf_ref18": {
            "description": "Customer",
            "_short": "Cust"
        },
        "uf_ref19": {
            "description": "Maintenance Agreement",
            "_short": "MNT"
        },
        "uf_ref21": {
            "description": "Unassigned",
            "_short": "Unassigned"
        },
        "uf_ref23": {
            "description": "Upside",
            "_short": "UP12"
        },
        "uf_ref28": {
            "description": "ASA4",
            "_short": "42"
        },
        "uf_out1": {
            "description": "Remote 2",
            "_short": "Code1§Related2"
        },
        "uf_out2": {
            "description": "",
            "_short": ""
        },
        "uf_out3": {
            "description": "",
            "_short": ""
        },
        "uf_out4": {
            "description": "",
            "_short": ""
        },
        "uf_out5": {
            "description": "",
            "_short": ""
        },
        "uf_out6": {
            "description": "",
            "_short": ""
        },
        "uf_out7": {
            "description": "",
            "_short": ""
        },
        "uf_out8": {
            "description": "",
            "_short": ""
        },
        "uf_out9": {
            "description": "",
            "_short": ""
        },
        "uf_out10": {
            "description": "",
            "_short": ""
        },
        "uf_out11": {
            "description": "",
            "_short": ""
        },
        "uf_out12": {
            "description": "",
            "_short": ""
        },
        "uf_out13": {
            "description": "",
            "_short": ""
        },
        "uf_out14": {
            "description": "",
            "_short": ""
        },
        "uf_out15": {
            "description": "",
            "_short": ""
        },
        "uf_out16": {
            "description": "",
            "_short": ""
        },
        "uf_out17": {
            "description": "",
            "_short": ""
        },
        "uf_out18": {
            "description": "",
            "_short": ""
        },
        "uf_out19": {
            "description": "",
            "_short": ""
        },
        "uf_out20": {
            "description": "",
            "_short": ""
        },
        "uf_out21": {
            "description": "",
            "_short": ""
        },
        "uf_out22": {
            "description": "",
            "_short": ""
        },
        "uf_out23": {
            "description": "",
            "_short": ""
        },
        "uf_out24": {
            "description": "",
            "_short": ""
        },
        "uf_out25": {
            "description": "",
            "_short": ""
        },
        "uf_out26": {
            "description": "",
            "_short": ""
        },
        "uf_out27": {
            "description": "",
            "_short": ""
        },
        "uf_out28": {
            "description": "",
            "_short": ""
        },
        "uf_out29": {
            "description": "",
            "_short": ""
        },
        "uf_out30": {
            "description": "",
            "_short": ""
        },
        "resources": []
    }
]