Create Manual Activity Sheet
Post /ws/rest/service/v2/activity/sheet/activitysheet
Purpose
Creates or updates an activity sheet in a specified Unifiershell based on a project number. Only one activity sheet can be created per request.
The REST service creates an activity sheet if the request data[] contains an activity sheet name which is not present in the system.
The REST service updates an activity sheet if the request data[] contains activities for an existing activity sheet name for a project in the system.
Prerequisites
Ensure you have:
- The required Activity Sheet Services permissions under Activity Manager
- Created a shell
Request Format
Send an API request as a JSON Map with the following structure:
{
"options":{"project_number": "<value>"},
"data":[]
}
Request Parameters - Options Map
Specify the following parameters in the Options JSON map:
Request Parameter | Required? | Data Type | Description |
---|---|---|---|
project_number | Yes | String | A valid 'Active' shell number. |
Request Parameters - Data [] List
Specify the following parameters in the Options JSON map:
Request Parameter | Required? | Data Type | Description |
---|---|---|---|
name | Yes | String | Name of the manual activity sheet. It must be unique for each activity sheet in the shell. |
schedule_type | Yes | String | The schedule type of the activity. Valid values include: "Duration", and "Resource". |
timezone | Yes | String | The timezone configured in Unifier. Note: timezone is not updated when you choose to update the activity sheet. |
description | No | String | A description of the manual activity sheet. |
status | No | String | The status of the manual activity sheet. Valid values include: "Active" (default) or "Inactive" Status is not considered when you choose to create a manual activity sheet using this REST service. |
calendar | No | String | The name of a calendar associated with a project/shell. Defaults to "Project/Shell Calendar". |
act_sch_attr_start | No | String | The data source for the project schedule start date. Valjd values include: "Manual" (default) and "From Shell Attribute". |
act_sch_start_date | No | Date | The project schedule start date. For manual schedule source (Create Activity sheet), it defaults to the current date. If the schedule type is From Shell Details, it uses the from shell details start date. [In this case update of schedule date will be skip. In case of update(for Manual) if the field has not been provided, it will take the old date.] - Can you explain this more clearly? |
uuu_duration_type | No | String | Valid values include: "Fixed Duration" (default), "Fixed Units", or "Fixed units/time". |
act_id_prefix | No | String | Defaults to "A". |
act_id_suffix | No | Integer | An activity ID suffix value between 1 to 999999. Defaults to 1000. |
act_id_incr | No | Integer | An activity ID increment value between 1 to 1000. Defaults to "10". |
planning_rate_sheet | No | String | An existing rate sheet associated with the activity sheet. Defaults to the "Master Rate Sheet". |
actual_rate_sheet | No | String | An existing actual rate sheet associated with the activity sheet. Defaults to the "Master Rate Sheet". |
uuu_P6ETCComputeType | No | Integer | Specify a alid value 1 through 5, wherein uuu_P6ETCComputeType is computed as follows: "1" (default): Remaining Cost for Activity "2": 1 x (BAC - EV) "3": (1 / CPI) x (BAC - EV) "4": (1 / (CPI x SPI)) x (BAC - EV) "5": (BAC-EV) |
uuu_P6ETCUserValue | No | Float | If ETCTechnique is 5 , this value(Performance Factor) is accepted as a positive floating value. If ETCTechnique in the request is between 1 and 4, this value is ignored and is updated as 0.0 |
created by | No | String | Defaults to the full name of the Owner company administrator. If the field has not been passed, or has a null or empty value, the Company Administrator's name is considered. |
Response Format
A JSON object is returned in the following format.
{
"data": [],
"message": [<list of messages>],
"status": <REST status code value>,
"rest_audit_id": <id from the audit table>
}
A successful response displays a status code 200.
A failed response displays a message with a status code.
Sample Success Request
{
"options": {
"project_number": "P-0038"
},
"data": [
{
"name": "ManualSheetSample",
"description": "This is a sample activity sheet",
"status": "Active",
"calendar": "custom4",
"act_sch_attr_start" : "Manual",
"act_sch_start_date":"2023-08-25",
"uuu_duration_type": "Fixed Duration",
"schedule_type" : "Resource",
"timezone" : "UTC-10:00",
"act_id_prefix" : "A",
"act_id_suffix" : 1000,
"act_id_incr" : 10,
"planning_rate_sheet": "RS1",
"actual_rate_sheet":"RS1",
"uuu_P6ETCComputeType": 5 ,
"uuu_P6ETCUserValue": 0.5
}
]
}
Sample Success Response
To create a manual activity sheet, send a request in the following format:
{
"data": [
{
"calendar": "Project/Shell Calendar",
"schedule_type": "Resource",
"planning_rate_sheet": "Master Rate Sheet",
"uuu_P6ETCComputeType": 5,
"timezone": "(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",
"uuu_P6ETCUserValue": 0.25,
"act_id_suffix": 1000,
"description": "des",
"created by": "Unifier Unifier",
"act_id_prefix": "A",
"act_id_incr": 10,
"act_sch_attr_start": "Manual",
"actual_rate_sheet": "Master Rate Sheet",
"name": "24",
"act_sch_start_date": "2013-02-28",
"id": 323,
"status": "Active",
"uuu_duration_type": "Fixed Duration"
}
],
"message": [
"Field: [planning_rate_sheet] has been updated. Perform recosting to see the updated cost data in the sheet.",
"Field: [actual_rate_sheet] has been updated. Perform recosting to see the updated cost data in the sheet.",
"success"
],
"rest_audit_id": 1368,
"status": 200
}
Sample Success Response with Warning Messages
A successful response with status code 200 displays in the following format:
{
"data": [
{
"calendar": "custom1",
"schedule_type": "Resource",
"planning_rate_sheet": "Master Rate Sheet",
"uuu_P6ETCComputeType": 5,
"timezone": "(UTC+10:00) Hobart",
"uuu_P6ETCUserValue": "0.4",
"act_id_suffix": 100,
"description": "This is a sample activity sheet update1",
"created by": "Unifier Unifier",
"act_id_prefix": "$",
"act_id_incr": 10,
"act_sch_attr_start": "Manual",
"actual_rate_sheet": "Master Rate Sheet",
"name": "test",
"act_sch_start_date": "2022-12-10",
"id": 309,
"status": "Active",
"uuu_duration_type": "Fixed Units"
}
],
"message": [
"Field: [planning_rate_sheet] has been updated. Perform recosting to see the updated cost data in the sheet.",
"Field: [uuu_P6ETCComputeType] has been updated. Perform recosting to see the updated cost data in the sheet.",
"Field: [uuu_P6ETCUserValue] has been updated. Perform recosting to see the updated cost data in the sheet.",
"Field: [actual_rate_sheet] has been updated. Perform recosting to see the updated cost data in the sheet.",
"Field: [act_sch_start_date] has been updated. Perform scheduling to see the updated schedule data in the sheet. ",
"success"
],
"rest_audit_id": 1242,
"status": 200
}
Sample Failed Response
A failed response to create a manual activity sheet displays the corresponding status code in the following format:
{
"data": [],
"message": [
"The API request contains an empty value for: [name]."
],
"rest_audit_id": 1241,
"status": 12703
}
Supported Validation Messages and Status Codes
The following validation messages and status codes display in the response when incorrect values are provided in the request.
Field Name | Use-case Scenario | Status Code | Error Message |
---|---|---|---|
project_number | project_number is not specified. | 12018 | The API request is missing the required information: [project_number]. |
project_number | Invalid project_number. | 602 | Project/Shell Number is not correct. |
project_number | Inactive project_number. | 12020 | The API request contains an invalid value: [project_number]. Check the status of this project_number in Unifier. |
name | The name of the manual activity sheet is not specified in the request. | 12702 | The API request is missing the required information: [name]. |
name | Activity sheet is blank. | 12703 | The API request contains an empty value for:[name]. |
name | Activity Sheet exceeds 50 characters. | 12704 | Invalid value was found in a field: [name]. Allowed length: [50]. |
name | name is "System Activity Sheet." | 12705 | Invalid value was found in a field: [name]. Manual Activity Sheet name cannot be selected as System Activity Sheet. |
name | An invalid name value (non-String) is specified in the request. | 12733 | Invalid value was found in a field [name]. Allowed only string values. |
schedule_type | schedule_type is not specified. | 12706 | The API request is missing the required information: [schedule_type]. |
schedule_type | An invalid schedule_type value (non-String), or null or empty value is specified in the request. | 12707 | Invalid value was found in a field [schedule_type]. Allowed values: [Duration, Resource]. |
timezone | timezone is not specified. | 12729 | The API request is missing the required information: [timezone]. |
timezone | An invalid timezone value (non-String) is specified in the request. | 12715 | The API request contains an invalid value: [timezone]. |
timezone | timezone is not configured in Unifier. | 12716 | Invalid value was found in a field [timezone]. Please check if this timezone has been defined in shell. |
description | description of the activity sheet exceeds 400 characters. | 12708 | Invalid value was found in a field: [description]. Allowed length: [400] |
description | An invalid description value (non-String) is specified in the request. | 12734 | Invalid value was found in a field [description]. Allowed only string values. |
status | An invalid status value, (non-String), or null or empty value is specified in the request. | 12709 | Invalid value was found in a field [status]. Allowed only string values. |
status | The status of the activity sheet is not specified as "Active" or "Inactive". | 12710 | Invalid value was found in a field: [status]. Allowed value: [Active, Inactive] |
calendar | An invalid calendar value, (non-String), or null or empty value is specified in the request. | 12730 | Invalid value was found in a field : calendar. Allowed only string values. |
calendar | timezone is not configured in Unifier project/shell. | 12731 | Invalid value was found in a field [calendar]. Allowed only Calendars configured in the respective Unifier Project/Shell. |
act_sch_attr_start | An invalid act_sch_attr_start value, (non-String), or null or empty value is specified in the request. | 12711 | Invalid value was found in a field [act_sch_attr_start]. Allowed only string values. |
act_sch_attr_start | Project Schedule Start Date Data source value is an invalid value, other than "Manual" and "From Shell Attribute". | 12712 | Invalid value was found in a field: [act_sch_attr_start]. Allowed value: [Manual & From Shell Attribute] |
act_sch_start_date | An invalid act_sch_start_date format, or null or empty value is specified in the request. | 12713 | The API request contains an invalid value: [act_sch_start_date]. Correct date format [yyyy-MM-dd]. |
act_sch_start_date | In the update, the activity sheet has an in progress or completed activity. | 12714 | Cannot change Project Schedule Start date. One or more activities are in Complete or In-Progress. |
act_sch_start_date | The schedule Type is selected as "From Shell Details", and the Project start date is not specified in the shell details. | 12735 | Project Schedule Start Date: Input Required |
uuu_duration_type | An invalid uuu_duration_type format, or null or empty value is specified in the request. | 12717 | Invalid value was found in a field [uuu_duration_type]. Allowed values: [Fixed Duration, Fixed Units, Fixed units/time]. |
act_id_prefix | An invalid act_id_prefix format, or null or empty value is specified in the request, or act_id_prefix exceeds 20 characters. | 12718 | Invalid value was found in a field: [act_id_prefix]. Allowed length: [20]. |
act_id_suffix | An invalid act_id_suffix value, (non-Integer), null or empty, negative, or a value greater than 999999 is specified in the request. | 12719 | Invalid value was found in a field [act_id_suffix]. Allowed values between 1 to 999999. |
act_id_incr | An invalid act_id_incr value, (non-Integer), null or empty, negative, or value greater than 999999 is specified in the request. | 12720 | Invalid value was found in a field [act_id_incr]. Allowed values between 1 to 1000. |
planning_rate_sheet | A non-existent rate sheet value is specified in the request. | 12721 | Invalid value was found in a field [planning_rate_sheet]. Please check if this ratesheet has been defined in the respective shell. |
actual_rate_sheet | A non-existent rate sheet value is specified in the request. | 12722 | Invalid value was found in a field [actual_rate_sheet]. Please check if this ratesheet has been defined in the respective shell. |
uuu_P6ETCComputeType | uuu_P6ETCComputeType is not a number between 1 and 5. | 12723 | Invalid value was found in the field: [uuu_P6ETCComputeType]. Only integer values are allowed from 1 to 5. |
uuu_P6ETCComputeType | uuu_P6ETCComputeType value is empty or null. | 12724 | The API request contains empty value for: [uuu_P6ETCComputeType]. Only integer values are allowed from 1 to 5. |
uuu_P6ETCUserValue | uuu_P6ETCComputeType is 5, and uuu_P6ETCUserValue is not specified in the request. | 12725 | The API request is missing the required information: [uuu_P6ETCUserValue]. |
uuu_P6ETCUserValue | uuu_P6ETCUserValue is a null value. | 12726 | The API request contains empty value for: [uuu_P6ETCUserValue]. Only numeric values are allowed and should be greater than or equal to 0.01. |
uuu_P6ETCUserValue | Value is less than 0.01. | 12727 | Invalid value was found in a field: [uuu_P6ETCUserValue]. Only numeric values are allowed and should be greater than or equal to 0.01. |
created by | Invalid user | 900 | Enter a valid or an active user. |
Related Topics
Create, Update, and Remove Assignments
Create or Update Assignment Spreads
Create or Update Activity Spreads
Create, Update, and Remove Activities from the System Activity Sheet of a Specific Shell
Get Activities from the System Activity Sheet of a Specific Shell
Create, Update, and Delete Activities in the Manual Activity Sheet of a Specific Shell
Create or Update Baseline Schedule for Manual Activity Sheet
Get Activities in the Manual Activity Sheet of a Specific Shell
Schedule Project for Manual Activity Sheet
Recost Project for Manual Activity Sheet
Last Published Wednesday, April 9, 2025