Articles on: API

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.

projectType

FIXED

HOURLY

Default value is HOURLY

The sub-project type.

inheritParentPermissions

TRUE

FALSE

If TRUE, the sub-project inherits access and team assignments (e.g., ProjectManagers and ProjectTeam) from its parent project. Set to FALSE to manage the sub-project’s permissions independently.

startDate

The date when the sub-project begins (format: YYYY-MM-DD).

finishDate

The date when the sub-project ends (format: YYYY-MM-DD).

subprojectCode

0

30

Optional secondary identifier (alias) for the sub-project; should be unique within the parent project.

ProjectStatus code

Valid XPHR value

The value of the sub-project status.

ParentProject 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.

billingType

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 ($).

durationCorrection

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

billableType

Controls the default billable flag for time records

active

TRUE

FALSE

Indicates whether the project is currently active.

lateMissingNotification

TRUE

FALSE

TRUE: enabled; FALSE: disabled

lateMissingEmployeeSMSNotification

TRUE

FALSE

Valid XPHR value

Indicates if employees will receive SMS notifications when late (paid service).

lateMissingEmailsString

Valid email address

The email addresses that should receive Late and Missing Notifications (multiple addresses separated by commas).

projectManagerLogins

Valid XPHR value

The logins for sub-project management.

ProjectTeamMember OU, User

Valid XPHR value

Team assignments for the sub-project.

latitude

-90

90

The latitude of the sub-project location.

longitude

-180

180

The longitude of the sub-project location.

gpsRadius

0

Integer_MAX_VALUE

The GPS radius in meters.

CostCenter 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


Multiple email addresses are separated with commas.


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: 21/08/2025

Was this article helpful?

Share your feedback

Cancel

Thank you!