Project API
The Project API in XperienceHR provides an interface for managing projects, including creating, updating, deactivating, and listing projects, ensuring seamless integration with external systems for project management and tracking.
This API supports XML & JSON format for structured data exchange and requires authentication via an API key.
By integrating the Project API, organizations can efficiently manage project lifecycle data, ensuring accurate project tracking and resource allocation.
API Type: REST
Supported Formats: XML
API Key: Generated in the app configuration
Method: POST, GET
Functionality:
Create New Project
Update Project
Deactivate Project
Get All Projects
Multiple email addresses are separated with commas.
Cost Center Name & Code are required only when creating a new project. Updating Cost Center is not supported with this API.
To update project's information, match its code in request body and provide value(s) for data to be updated. Only Project code is a required value for update.
Common errors help in debugging and correcting API usage issues.
Example 1: Missing Code
Example 2: Name Length Exceeded Error
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.
This API supports XML & JSON format for structured data exchange and requires authentication via an API key.
By integrating the Project API, organizations can efficiently manage project lifecycle data, ensuring accurate project tracking and resource allocation.
Overview
API Type: REST
Supported Formats: XML
API Key: Generated in the app configuration
Method: POST, GET
Project Management
Functionality:
Create New Project
Update Project
Deactivate Project
Get All Projects
Create New Project
Parameter | Min | Max | Required | Information |
---|---|---|---|---|
Name | 1 | 100 | ✅ | |
Code | 1 | 30 | ✅ | |
Client Code | - | - | ✅ | Valid XPHR value |
Client Name | - | - | ❌ | Valid XPHR value |
Description | 0 | 500 | ❌ | |
Budget | 0 | Double_MAX_VALUE | ❌ | |
Duration | 0 | Integer_MAX_VALUE | ❌ | |
Billing Type | - | - | ❌ | Valid values: employee, activity, project |
Rate | - | - | ❌ | Only relevant for Project Rate type |
Billable | TRUE | FALSE | ❌ | |
Active | TRUE | FALSE | ❌ | |
Late Missing Notification | TRUE | FALSE | ❌ | |
SMS Notification | TRUE | FALSE | ❌ | Valid XPHR value |
Email String | - | - | ❌ | Valid email address |
Project Manager Logins | - | - | ❌ | Valid XPHR value |
Cost Center Code | - | - | ❌ | Valid XPHR value |
Cost Center Name | - | - | ❌ | Valid XPHR value |
Multiple email addresses are separated with commas.
Cost Center Name & Code are required only when creating a new project. Updating Cost Center is not supported with this API.
Endpoint
https://[INSTANCE].xperience.app/externalRestApi/project/save?apiKey=[API_KEY]
Update Project
To update project's information, match its code in request body and provide value(s) for data to be updated. Only Project code is a required value for update.
Endpoint
https://[INSTANCE].xperience.app/externalRestApi/project/save?apiKey=[API_KEY]
Get All Projects
Endpoint
https://[INSTANCE].xperience.app/externalRestApi/project/list?apiKey=[API_KEY]
Error Handling
Common errors help in debugging and correcting API usage issues.
Example 1: Missing Code
<ProjectImportResponse> <Result> <status>error</status> <Errors> <error>Code required</error> </Errors> </Result> </ProjectImportResponse>
Example 2: Name Length Exceeded Error
<ProjectImportResponse> <Result> <code>APIPR2</code> <status>error</status> <Errors> <error>Name: String out of range. Maximal length: 100.</error> </Errors> </Result> </ProjectImportResponse>
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: 16/03/2025
Thank you!