Sub-Project API
The Sub-Project API in XperienceHR provides an interface for managing sub projects, including creating, updating, deactivating, and listing sub-projects, ensuring seamless integration with external systems for detailed project management and tracking.
This API supports XML & JSON format for structured data exchange and requires authentication via an API key.
By integrating the Sub-Project API, organizations can efficiently manage sub project lifecycle data, ensuring accurate tracking and resource allocation within larger projects.
Overview
API Type: REST
Supported Formats: XML
API Key: Generated in the app configuration
Method: POST, GET
Sub-Project Management
Functionality:
- Create New Sub-Project
- Update Sub-Project
- Deactivate Sub-Project
- Get all Sub-Projects
Create New Sub-Project
Parameter | Min | Max | Required | Information | Description |
---|---|---|---|---|---|
Name | 1 | 100 | ✅ |
| The sub-project name. |
Code | 1 | 30 | ✅ |
| The sub-project short name. |
Description | 0 | 500 | ❌ |
| The description of this sub-project. |
Project Type | FIXED | HOURLY | ❌ | Default value is HOURLY | The sub-project type. |
Inherit Parent Permissions | TRUE | FALSE | ❌ |
|
|
Start Date |
|
| ❌ |
| The date when the sub-project begins (format: YYYY-MM-DD). |
Finish Date |
|
| ❌ |
| The date when the sub-project ends (format: YYYY-MM-DD). |
Subproject Code | 0 | 30 | ❌ |
|
|
Project Status |
|
| ❌ |
| The status of project. |
Project Status Code |
|
| ✅ | Valid XPHR value | The short name of the sub-project status value. |
Parent Project Code |
|
| ✅ | Valid XPHR value | The code of parent project. |
Budget | 0 | Double_MAX_VALUE | ❌ |
| The amount of money expected to be spent on the sub-project ($). |
Duration | 0 | Integer_MAX_VALUE | ❌ |
| The number of hours expected to be spent on the sub-project. |
Billing Type |
|
| ❌ | Valid values: employee, activity, project | The way in which the budgeted amount is calculated. |
Rate | 0 | Double_MAX_VALUE | ❌ | Only relevant for project rate type | The sub-project rate ($). |
Duration Correction |
| Positive value | ❌ |
| The number of hours already tracked outside the application. |
Billable | TRUE | FALSE | ❌ |
| TRUE: all activities are billable; FALSE: only manually marked activities are billable |
Billable Type |
|
| ❌ |
| The way in which the budgeted amount is calculated. |
Active | TRUE | FALSE | ❌ |
| Indicates whether the project is currently active. |
Late Missing Notification | TRUE | FALSE | ❌ |
| TRUE: enabled; FALSE: disabled |
SMS Notification | TRUE | FALSE | ❌ | Valid XPHR value | Indicates if employees will receive SMS notifications when late (paid service). |
Email String |
|
| ❌ | Valid email address | The email addresses that should receive Late and Missing Notifications (multiple addresses separated by commas). |
Project Manager Logins |
|
| ❌ | Valid XPHR value | The logins for sub-project management. |
GPS Latitude | -90 | 90 | ❌ |
| The latitude of the sub-project location. |
GPS Longitude | -180 | 180 | ❌ |
| The longitude of the sub-project location. |
GPS Radius | 0 | Integer_MAX_VALUE | ❌ |
| The GPS radius in meters. |
Cost Center Code |
|
| ❌ | Valid XPHR value | The code of the cost center, only for creating a new sub-project (updating Cost Center is not supported). |
Billable Type Options | Description |
---|---|
YES | All activities marked strictly as billable |
DEFAULT_YES | All activities marked as billable but could be unmarked |
NO | All activities marked strictly as non-billable |
DEFAULT_NO | All activities marked as non-billable but could be unmarked |
ACTIVITY | Billable flag is determined by activity setting |
Endpoint
Update Sub-Project
To update sub-project's information, match its code in request body and provide value(s) for data to be updated.
Endpoint
Get All Sub-Projects
Endpoint
Error Handling
Common errors help in debugging and correcting API usage issues.
Example 1: Missing Code
Example 2: User Not Found
Example 3: Parent Project Required
HTTP Response Codes
- **2XX Success ** - Operation completed successfully.
- **4XX Client Error ** - Likely an issue with the request, such as incorrect parameters or insufficient permissions. Returns an error message in text or XML format.
- **5XX Server Error ** - Indicates a server issue. Report this error if encountered.
Updated on: 26/05/2025
Thank you!